.reviews-main{padding-top:118px;position:relative;z-index:2}.reviews-hero{min-height:620px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:clamp(2rem,6vw,7rem);align-items:center;padding-block:6rem 4rem}.reviews-hero-copy h1{font-size:clamp(3.5rem,7vw,7.4rem);line-height:.88;max-width:8.8ch;margin:.4rem 0 1.6rem}.reviews-hero-copy h1 em{font-style:normal;background:linear-gradient(115deg,#fff 5%,#d7b1ff 48%,#77d7ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 40px rgba(154,92,255,.2)}.reviews-hero-copy>p:last-child{max-width:530px;color:var(--muted);font-size:1.08rem;line-height:1.8}
.rating-stage{min-height:430px;border:1px solid rgba(181,134,255,.25);border-radius:42px;background:radial-gradient(circle at 50% 40%,rgba(123,69,218,.21),rgba(8,8,28,.8) 55%,rgba(4,5,18,.92));display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;isolation:isolate;box-shadow:0 35px 90px rgba(0,0,0,.35),inset 0 0 55px rgba(103,58,183,.09)}.rating-stage:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.04);border-radius:31px;pointer-events:none}.rating-stage-glow{position:absolute;width:58%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(186,110,255,.24),rgba(105,72,238,.08) 45%,transparent 72%);filter:blur(9px);z-index:-1;animation:rating-breathe 5s ease-in-out infinite}.rating-stars-large{display:flex;align-items:center;justify-content:center;gap:clamp(.25rem,.8vw,.7rem);perspective:900px;width:94%}.review-star{display:inline-grid;place-items:center;transform-style:preserve-3d}.rating-stars-large .review-star{width:clamp(62px,8vw,112px);aspect-ratio:1;animation:star-own-axis 8s cubic-bezier(.55,.05,.3,.95) infinite;animation-delay:calc(var(--i) * -.78s);filter:drop-shadow(0 0 7px rgba(222,176,255,.8)) drop-shadow(0 0 24px rgba(134,77,255,.54))}.rating-stars-large .review-star:nth-child(even){animation-direction:reverse}.review-star svg{width:100%;height:100%;overflow:visible}.rating-summary{text-align:center;margin-top:1.8rem}.rating-summary strong{display:block;font-family:"Playfair Display",serif;font-size:clamp(2.5rem,4vw,4.2rem);line-height:1}.rating-summary span{display:block;margin-top:.55rem;color:#c9c6d9}.rating-summary small{display:inline-flex;margin-top:.7rem;padding:.35rem .65rem;border:1px solid rgba(188,137,255,.28);border-radius:999px;color:#d8b9ff;background:rgba(120,73,205,.12);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.reviews-spotlight{position:relative;padding-block:3rem 7rem}.review-orbit{position:absolute;width:min(780px,92vw);aspect-ratio:1;left:50%;top:48%;transform:translate(-50%,-50%);border:1px solid rgba(136,92,225,.1);border-radius:50%;pointer-events:none}.review-orbit:before,.review-orbit:after{content:"";position:absolute;inset:12%;border:1px solid rgba(136,92,225,.08);border-radius:50%}.review-orbit:after{inset:26%}.review-orbit span{position:absolute;width:7px;height:7px;border-radius:50%;background:#c58cff;box-shadow:0 0 18px #a45bff;animation:orbit-dot 10s linear infinite}.review-orbit span:nth-child(1){left:8%;top:52%}.review-orbit span:nth-child(2){right:13%;top:18%;animation-duration:14s}.review-orbit span:nth-child(3){right:24%;bottom:8%;animation-duration:12s;animation-direction:reverse}.review-spotlight-card{position:relative;max-width:920px;min-height:330px;margin:auto;border-radius:34px;border:1px solid rgba(176,133,255,.24);background:linear-gradient(145deg,rgba(15,14,39,.88),rgba(8,8,24,.9));box-shadow:0 30px 90px rgba(0,0,0,.32),0 0 50px rgba(103,58,183,.08);padding:clamp(2rem,5vw,4.6rem);display:flex;flex-direction:column;justify-content:center;overflow:hidden}.review-spotlight-card:before{content:"“";position:absolute;right:5%;top:-8%;font-family:"Playfair Display",serif;font-size:15rem;line-height:1;color:rgba(184,125,255,.07)}.review-spotlight-card.is-leaving .review-spotlight-inner{animation:review-exit .34s ease forwards}.review-spotlight-card.is-entering .review-spotlight-inner{animation:review-enter .62s cubic-bezier(.16,.8,.2,1) both}.review-spotlight-inner{position:relative;z-index:1}.review-spotlight-author{display:flex;align-items:center;gap:1rem;margin-bottom:1.4rem}.review-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;border:1px solid rgba(198,155,255,.35);box-shadow:0 0 25px rgba(145,81,255,.18);background:#17132d}.review-avatar-fallback{display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:1.35rem}.review-spotlight-author strong{display:block;font-size:1.08rem}.review-spotlight-author small{display:block;color:var(--muted);margin-top:.2rem}.review-demo-badge{display:inline-flex;margin-left:.45rem;padding:.16rem .42rem;border-radius:999px;border:1px solid rgba(179,132,255,.34);color:#d7b5ff;font-family:Arial,sans-serif;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}.review-card-stars{display:flex;gap:.15rem}.review-card-stars .review-star{width:22px}.review-spotlight-text{font-family:"Playfair Display",serif;font-size:clamp(1.45rem,2.6vw,2.3rem);line-height:1.48;max-width:790px;margin:1.1rem 0 0}.review-dots{display:flex;justify-content:center;gap:.55rem;margin-top:1.5rem}.review-dots button{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.24);transition:.25s}.review-dots button.active{width:30px;border-radius:999px;background:linear-gradient(90deg,#8b6dff,#d36bff);box-shadow:0 0 15px rgba(176,94,255,.45)}
.review-submit-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,5vw,6rem);align-items:start;padding-block:5rem 7rem}.review-submit-copy{position:sticky;top:130px}.review-submit-copy h2,.all-reviews h2{font-size:clamp(2.7rem,5vw,5rem);margin:.35rem 0 1rem}.review-submit-copy p:last-child{color:var(--muted);line-height:1.8}.review-submit-card{border:1px solid rgba(177,129,255,.22);border-radius:30px;background:rgba(7,8,27,.82);padding:clamp(1.5rem,4vw,3.2rem)}.review-auth-state{text-align:center;padding:2.4rem 1rem}.review-auth-state strong{font-family:"Playfair Display",serif;font-size:1.7rem}.review-auth-state p{color:var(--muted);margin:1rem auto 1.5rem;max-width:520px}.review-submit-card form{display:grid;gap:1.35rem}.review-submit-card label{display:grid;gap:.55rem;font-weight:600}.review-submit-card textarea{resize:vertical;min-height:150px}.review-form-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.08)}.review-author-preview{display:flex;align-items:center;gap:.85rem}.review-author-preview img,.review-author-preview>span{width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid rgba(190,145,255,.35)}.review-author-preview>span{display:grid;place-items:center;background:rgba(126,79,211,.18);font-family:"Playfair Display",serif}.review-author-preview small,.review-author-preview strong{display:block}.review-author-preview small{color:var(--muted);font-size:.72rem}.review-pending-badge{padding:.35rem .65rem;border-radius:999px;border:1px solid rgba(255,206,113,.3);background:rgba(255,181,48,.08);color:#ffd98a;font-size:.72rem}.review-rating-control input[type=range]{width:100%;accent-color:#b971ff}.review-rating-preview{display:flex;align-items:center;gap:.8rem}.review-rating-preview>[data-review-form-stars]{display:flex;gap:.08rem}.review-rating-preview .review-star{width:28px}.review-rating-preview b{font-size:1.1rem}.review-form-status{min-height:1.4rem;color:#cabfe0;margin:0}
.all-reviews{padding-block:4rem 9rem}.all-reviews .section-heading>p{color:var(--muted)}.reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;margin-top:2.2rem}.review-list-card{position:relative;border:1px solid rgba(173,132,242,.17);border-radius:25px;background:linear-gradient(145deg,rgba(15,15,39,.76),rgba(7,8,24,.82));padding:1.5rem;min-height:230px;display:flex;flex-direction:column}.review-list-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.review-list-author{display:flex;gap:.8rem;align-items:center}.review-list-author .review-avatar{width:46px;height:46px}.review-list-author strong,.review-list-author small{display:block}.review-list-author small{color:var(--muted);font-size:.72rem;margin-top:.16rem}.review-list-card .review-card-stars{margin:.85rem 0}.review-list-card p{line-height:1.65;margin:0;color:#e5e2ef}.reviews-empty{grid-column:1/-1;text-align:center;padding:4rem 1rem;border:1px dashed rgba(170,125,240,.2);border-radius:24px;color:var(--muted)}
@keyframes star-own-axis{0%,74%{transform:rotateY(0deg) rotateZ(0deg) scale(1)}84%{transform:rotateY(180deg) rotateZ(5deg) scale(1.08)}94%,100%{transform:rotateY(360deg) rotateZ(0deg) scale(1)}}@keyframes rating-breathe{0%,100%{transform:scale(.92);opacity:.65}50%{transform:scale(1.08);opacity:1}}@keyframes orbit-dot{0%{transform:translate(0,0) scale(.8)}50%{transform:translate(25px,-18px) scale(1.4)}100%{transform:translate(0,0) scale(.8)}}@keyframes review-enter{0%{opacity:0;transform:translate3d(38px,15px,0) rotateX(-5deg);filter:blur(7px)}100%{opacity:1;transform:none;filter:none}}@keyframes review-exit{to{opacity:0;transform:translate3d(-35px,-8px,0) scale(.985);filter:blur(6px)}}
@media(max-width:900px){.reviews-main{padding-top:92px}.reviews-hero{grid-template-columns:1fr;min-height:auto;padding-top:4rem}.rating-stage{min-height:340px}.review-submit-section{grid-template-columns:1fr}.review-submit-copy{position:static}.reviews-list{grid-template-columns:1fr}.review-spotlight-card{min-height:300px}}@media(max-width:560px){.reviews-hero{padding-top:3rem}.reviews-hero-copy h1{font-size:clamp(3.2rem,16vw,4.7rem)}.rating-stage{border-radius:28px;min-height:300px}.rating-stars-large{gap:0}.rating-stars-large .review-star{width:19vw;max-width:78px}.reviews-spotlight{padding-bottom:4.5rem}.review-spotlight-card{border-radius:24px;padding:1.5rem}.review-spotlight-text{font-size:1.35rem}.review-submit-section{padding-block:3.5rem 5rem}.review-form-head{align-items:flex-start;flex-direction:column}.all-reviews{padding-bottom:6rem}}@media(prefers-reduced-motion:reduce){.rating-stage-glow,.rating-stars-large .review-star,.review-orbit span{animation:none}.review-spotlight-card.is-leaving .review-spotlight-inner,.review-spotlight-card.is-entering .review-spotlight-inner{animation:none}}

/* Public avatars are always cropped to the intended circular slot. */
.review-avatar{display:grid;place-items:center;flex:0 0 auto;max-width:58px;max-height:58px;overflow:hidden}.review-avatar img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover}
