.review-page{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:calc(100svh - 88px);background:radial-gradient(circle at 7% 80%,#e6f3f6,transparent 40%),#fff;color:var(--color-ocean-deep)}
.review-page__intro{position:relative;padding:clamp(1.5rem,4vw,3.5rem) clamp(2rem,5vw,5rem) 2rem var(--space-page);overflow:hidden}.review-page__intro nav{display:flex;gap:.7rem;color:#65828e;font-size:.75rem;font-weight:700}.review-page__intro nav a{color:var(--color-ocean)}.review-page__kicker{margin-top:clamp(2.5rem,7vw,6rem);color:var(--color-magenta);font-size:.69rem;font-weight:800;letter-spacing:.15em}.review-page h1{max-width:12ch;margin:.75rem 0 1rem;font-size:clamp(2.4rem,4.3vw,4.6rem);line-height:1.08;letter-spacing:-.06em}.review-page__intro>p:not(.review-page__kicker){max-width:48ch;color:#4f6e7b;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.65}.review-page__ornament{position:absolute;bottom:2rem;left:var(--space-page);color:#b40074;font-size:clamp(1.6rem,3vw,3rem);letter-spacing:.2em;opacity:.8}
.review-page__form-wrap{display:flex;align-items:center;justify-content:center;padding:clamp(2rem,4vw,4rem) var(--space-page);background:#eef5f7}.review-form,.review-page__success{width:min(100%,620px);padding:clamp(1.4rem,3vw,2.6rem);border:1px solid #d1e2e7;border-radius:18px 70px 18px 18px;background:#fff;box-shadow:0 20px 50px rgb(5 58 85 / 8%)}.review-form{display:grid;gap:1rem}.review-form label,.review-form legend{display:grid;gap:.35rem;color:#214d61;font-size:.78rem;font-weight:800}.review-form fieldset{min-width:0;margin:0;padding:0;border:0}.review-form__stars{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.45rem}.review-form__stars label{cursor:pointer}.review-form__stars input{position:absolute;opacity:0}.review-form__stars span{display:block;min-width:54px;padding:.5rem .6rem;border:1px solid #c9dce2;border-radius:999px;color:#506f7d;text-align:center}.review-form__stars input:checked+span{border-color:#a40069;background:#fce9f5;color:#8b005c}.review-form__stars input:focus-visible+span{outline:3px solid var(--color-ocean);outline-offset:3px}.review-form__pair{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.review-form input:not([type=radio],[type=checkbox]),.review-form textarea{width:100%;min-height:45px;padding:.7rem .85rem;border:1px solid #b7cfd8;border-radius:9px;background:#fbfdfd;color:#143b4d;font:500 1rem/1.4 var(--font-body)}.review-form textarea{min-height:130px;resize:vertical}.review-form input:focus,.review-form textarea:focus{outline:2px solid var(--color-ocean);outline-offset:2px}.review-form__consent{display:flex!important;align-items:flex-start;gap:.6rem!important;font-size:.75rem!important;line-height:1.45}.review-form__consent input{width:17px;height:17px;flex:none;margin:.1rem 0 0;accent-color:var(--color-magenta)}.review-form>button{display:flex;align-items:center;justify-content:space-between;min-height:47px;padding:.55rem .7rem .55rem 1rem;border:0;border-radius:999px;background:var(--color-magenta);color:#fff;font:800 .84rem/1 var(--font-body);cursor:pointer}.review-form>button span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #fff;border-radius:50%;font-size:1.1rem}.review-form__note{color:#657f89;font-size:.71rem;line-height:1.4}.review-form__error{padding:.7rem .9rem;border-radius:8px;background:#fff0f4;color:#9b004e;font-size:.78rem;font-weight:700}.review-form__trap{position:absolute;left:-10000px}.review-page__success span{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--color-magenta);color:#fff;font-size:1.6rem}.review-page__success h2{margin:1rem 0;font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.2}.review-page__success p{color:#4f6d79;line-height:1.55}.review-page__success a{display:inline-block;margin-top:1.5rem;color:var(--color-magenta);font-weight:800}
@media(max-width:760px){.review-page{grid-template-columns:1fr;min-height:0}.review-page__intro{padding:1.3rem var(--space-page) 2rem}.review-page__kicker{margin-top:2.5rem}.review-page h1{font-size:clamp(2.35rem,7.5vw,3.5rem)}.review-page__ornament{position:static;margin-top:1.2rem;font-size:1.6rem}.review-page__form-wrap{padding:1.5rem var(--space-page) 2.5rem}.review-form,.review-page__success{padding:1.2rem;border-radius:14px 45px 14px 14px}}
@media(max-width:420px){.review-form__pair{grid-template-columns:1fr}.review-form__stars span{min-width:46px;padding:.45rem .4rem}}
@media(max-width:760px){.review-page h1{max-width:17ch;font-size:clamp(2.1rem,6.7vw,2.8rem)}.review-page__kicker{margin-top:1.9rem}.review-page__intro{padding-bottom:1.4rem}}
