@import url('/sites/kulibin/roboto.css');
:root {
  font-family:Roboto,Arial,sans-serif;
  color:#000;
  background:#fff;
  font-synthesis:none;
  font-weight:400;
  --green:#76d300;
  --blue:#59a3ff;
  --muted:#a1a1a1
}
* {
  box-sizing:border-box
}
body {
  margin:0
}
button,input,textarea {
  font:inherit
}
button,a {
  -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
a {
  color:inherit
}
p,h1,h2,h3,dl,dd {
  margin:0
}
img {
  display:block;
  max-width:100%
}
button {
  border:0
}
button:disabled {
  cursor:wait;
  opacity:.6
}
[hidden] {
  display:none!important
}
:focus-visible {
  outline:3px solid #397fcd;
  outline-offset:4px
}
.container {
  width:1160px;
  margin-inline:auto
}
.button {
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  text-align:center;
  border-radius:15px;
  font-size:15px;
  font-weight:500;
  line-height:1.55;
  color:white;
  transition:background-color .15s;
  min-height:50px
}
.blue {
  background:var(--blue)
}
.blue:hover {
  background:#4796fa
}
.green {
  background:var(--green)
}
.green:hover {
  background:#6ac000
}
.black {
  background:#000
}
.black:hover {
  background:#333
}
.site-header {
  height:62px;
  border-bottom:1px solid #e9e9e9;
  background:#fff;
  position:sticky;
  top:0;
  z-index:2
}
.header-inner {
  height:60px;
  display:flex;
  align-items:center;
  gap:10px
}
.brand {
  display:flex;
  align-items:center;
  gap:9px;
  text-decoration:none;
  font-size:16px;
  font-weight:500;
  white-space:nowrap
}
.header-description,.header-diagnostics {
  color:var(--muted);
  font-size:14px;
  line-height:22px
}
.header-description {
  margin-left:61px
}
.header-diagnostics {
  margin-left:auto;
  margin-right:58px
}
.phone-icon {
  height:50px;
  width:50px;
  flex-shrink:0
}
.phone-icon img {
  width:21px;
  height:21px
}
.header-request {
  width:240px;
  flex-shrink:0
}
.hero {
  height:548px;
  position:relative
}
.trust-line {
  position:absolute;
  top:18px;
  left:0;
  display:flex;
  align-items:center;
  gap:16px;
  font-size:14px;
  line-height:22px
}
.review-anchor {
  display:flex;
  align-items:center;
  gap:9px;
  color:#6ec500;
  font-weight:500;
  text-decoration:none;
  white-space:nowrap
}
.score-chip {
  display:flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:24px;
  border-radius:7px;
  background:#6ec500;
  color:white;
  font-size:15px
}
.trust-line>p {
  color:var(--muted)
}
h1 {
  position:absolute;
  left:0;
  top:60px;
  width:500px;
  font-size:33px;
  line-height:40px;
  font-weight:700
}
.starting-price {
  position:absolute;
  right:0;
  top:95px;
  font-size:33px;
  line-height:40px;
  font-weight:700
}
.hero-photos {
  position:absolute;
  top:169px;
  left:0;
  display:grid;
  grid-template-columns:500px 310px;
  gap:10px;
  height:379px
}
.hero-photos img {
  width:100%;
  height:379px;
  object-fit:cover
}
.portrait {
  object-position:center top
}
.repair-photo {
  object-position:center
}
.hero-sidebar {
  position:absolute;
  right:0;
  top:170px;
  width:300px
}
.desktop-actions {
  display:grid;
  gap:10px
}
.desktop-actions .button {
  height:65px
}
.master-card {
  margin-top:26px
}
.master-name {
  font-size:16px;
  line-height:25px;
  font-weight:500
}
.master-rating {
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:5px;
  font-size:14px;
  font-weight:500;
  line-height:22px
}
.stars {
  width:75px;
  height:13px;
  object-fit:contain
}
.verified {
  display:flex;
  gap:7px;
  align-items:center;
  margin-top:5px;
  font-size:14px;
  line-height:22px
}
.discount-card {
  position:relative;
  height:107px;
  margin-top:26px;
  background:#f0f0f0;
  border-radius:15px;
  overflow:hidden;
  padding:18px 25px
}
.discount-card strong {
  position:relative;
  z-index:1;
  display:block;
  font-size:21px;
  line-height:33px;
  font-weight:500
}
.discount-card>span {
  position:relative;
  z-index:1;
  display:block;
  font-size:13px;
  line-height:20px;
  margin-top:15px
}
.discount-card>img {
  position:absolute;
  right:0;
  bottom:0;
  width:102px;
  height:102px
}
.intro-block {
  overflow:visible
}
.intro-block .text-column {
  max-width:763px
}
.intro-heading {
  height:105px;
  padding-top:75px
}
.intro-heading h2 {
  max-width:641px;
  font-size:24px;
  font-weight:700;
  line-height:29px
}
.intro-copy {
  padding-top:15px;
  font-size:16px;
  line-height:25px
}
.intro-0 {
  height:135px
}
.intro-1 {
  height:185px
}
.intro-1 .geography {
  color:var(--muted);
  font-size:14px;
  line-height:22px;
  max-width:611px;
  margin-top:28px
}
.intro-3 {
  height:145px
}
.intro-5 {
  height:95px
}
.intro-7 {
  height:395px
}
.intro-copy ul,.intro-copy ol {
  padding-left:20px;
  margin:0
}
.intro-copy li {
  padding-left:0
}
.intro-copy b,.intro-copy strong {
  font-weight:700
}
.section-heading {
  height:130px;
  padding-top:75px
}
.section-heading h2 {
  font-size:30px;
  font-weight:700;
  line-height:36px;
  scroll-margin-top:25px
}
.price-group-heading {
  height:105px;
  padding-top:60px
}
.price-group-0 .price-group-heading {
  height:60px;
  padding-top:15px
}
.price-group h3 {
  font-size:24px;
  font-weight:700;
  line-height:29px;
  max-width:641px
}
.price-list {
  width:820px
}
.price-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 103px;
  min-height:32px;
  line-height:32px;
  font-size:16px
}
.price-row dt {
  margin:0
}
.price-row dd {
  text-align:right;
  white-space:nowrap
}
.price-group-0 .price-list {
  margin-bottom:-2px
}
.price-group-1 .price-list {
  margin-bottom:-4px
}
.rating-summary {
  height:140px;
  display:flex;
  align-items:flex-start;
  gap:34px;
  width:820px;
  position:relative
}
.rating-total {
  width:84px;
  flex-shrink:0;
  display:flex;
  align-items:flex-start;
  flex-direction:column
}
.rating-total>strong {
  font-size:60px;
  line-height:60px;
  font-weight:700
}
.rating-total>.stars {
  width:82px;
  height:14px;
  margin-top:9px
}
.rating-total>span {
  font-size:13px;
  line-height:13px;
  white-space:nowrap;
  margin-top:9px;
  padding-left:2px
}
.rating-bars {
  width:448px;
  display:grid;
  gap:9px;
  padding-top:0
}
.rating-row {
  display:grid;
  grid-template-columns:82px 1fr 18px;
  align-items:center;
  gap:9px;
  height:14px
}
.rating-stars {
  font-family:Arial,sans-serif;
  font-size:15px;
  line-height:14px;
  letter-spacing:0;
  color:#ffb600;
  white-space:nowrap
}
.rating-stars>span {
  color:#d1d1d1
}
.rating-track {
  height:4px;
  display:block;
  background:#e5e5e5;
  border-radius:50px
}
.rating-track.full {
  background:#8c8c8c
}
.rating-count {
  font-size:13px;
  line-height:13px;
  color:#777
}
.write-review {
  position:absolute;
  right:0;
  top:65px;
  width:185px;
  height:45px;
  min-height:45px;
  font-size:13px
}
.review-list {
  width:820px
}
.review {
  position:relative;
  padding-top:0;
  min-height:240px
}
.review-header {
  display:flex;
  gap:15px;
  align-items:flex-start
}
.avatar {
  height:45px;
  width:45px;
  border-radius:50%;
  background:var(--avatar-color);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:20px;
  font-weight:300;
  line-height:31px;
  flex-shrink:0
}
.review-header h3 {
  font-size:16px;
  line-height:25px;
  font-weight:500
}
.review-header p {
  font-size:13px;
  line-height:13px;
  color:var(--muted);
  margin-top:2px
}
.review-meta {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:9px;
  font-size:14px;
  line-height:22px;
  color:var(--muted)
}
.review-meta>.stars {
  width:82px;
  height:14px;
  flex-shrink:0
}
.review-text {
  width:719px;
  font-size:16px;
  line-height:25px;
  margin-top:6px
}
.review-0 {
  min-height:160px
}
.review-3,.review-4,.review-5 {
  min-height:260px
}
.review-6 {
  min-height:335px
}
.site-footer {
  height:260px;
  background:#f0f0f0;
  padding-top:45px;
  font-size:10px;
  line-height:13px;
  color:var(--muted)
}
.site-footer a {
  display:inline-block;
  margin-top:22px
}
.site-footer a+p {
  margin-top:5px
}
.mobile-actions {
  display:none
}
.contact-dialog {
  border:0;
  border-radius:15px;
  padding:0;
  width:460px;
  max-width:calc(100vw - 40px);
  max-height:calc(100dvh - 40px);
  overflow:visible;
  margin:auto;
  color:#000;
  background:#fff;
  font-family:Roboto,Arial,sans-serif
}
.contact-dialog::backdrop {
  background:rgba(0,0,0,.2)
}
.dialog-content {
  padding:40px 45px;
  max-height:calc(100dvh - 40px);
  overflow:auto;
  border-radius:15px
}
.contact-dialog h2 {
  font-size:28px;
  font-weight:500;
  line-height:34px;
  margin-bottom:28px
}
.contact-form>label:not(.consent),.name-field>label {
  display:block;
  font-size:20px;
  font-weight:300;
  line-height:26px;
  margin-bottom:8px
}
.contact-form input:not([type=checkbox]),.contact-form textarea {
  border:1px solid #c7c7cc;
  border-radius:15px;
  background:#fff;
  height:60px;
  width:100%;
  padding:16px 20px;
  font-size:16px;
  font-weight:300;
  color:#000;
  outline-offset:2px
}
.contact-form input::placeholder {
  color:#8a8a8a
}
.name-field,.review-field {
  display:none
}
.is-review .name-field,.is-review .review-field {
  display:block
}
.name-field {
  margin-bottom:20px
}
.review-field {
  margin-top:20px
}
.contact-form textarea {
  height:90px;
  resize:vertical
}
.consent {
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:25px 0 27px;
  font-size:14px;
  line-height:18px;
  font-weight:300;
  cursor:pointer
}
.consent input {
  appearance:none;
  width:20px;
  height:20px;
  border:2px solid #000;
  flex-shrink:0;
  margin:0;
  display:grid;
  place-content:center;
  border-radius:0
}
.consent input:checked::after {
  content:'';
  width:9px;
  height:5px;
  border-left:2px solid #000;
  border-bottom:2px solid #000;
  transform:rotate(-45deg) translateY(-1px)
}
.consent a {
  text-decoration:underline
}
.submit-button {
  height:60px;
  width:100%;
  font-size:16px;
  font-weight:700
}
.dialog-close {
  position:fixed;
  top:20px;
  right:20px;
  width:30px;
  height:30px;
  padding:0;
  background:none
}
.dialog-close::before,.dialog-close::after {
  position:absolute;
  content:'';
  width:30px;
  height:2px;
  left:0;
  top:14px;
  background:#000;
  transform:rotate(45deg)
}
.dialog-close::after {
  transform:rotate(-45deg)
}
.dialog-open {
  overflow:hidden
}
.form-error {
  color:#bf2938;
  font-size:14px;
  line-height:20px;
  margin-bottom:15px
}
.form-success {
  text-align:center;
  padding:10px 0
}
.success-mark {
  display:flex;
  margin:0 auto 20px;
  width:60px;
  height:60px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--green);
  color:white;
  font-size:35px
}
.form-success h3 {
  font-size:24px;
  line-height:30px;
  margin-bottom:15px
}
.form-success p {
  font-size:16px;
  line-height:24px;
  margin-bottom:25px
}
.success-close {
  width:100%
}
.visually-hidden {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
@media(max-width:1199px) and (min-width:960px) {
  .container {
    width:940px
  }
  .header-diagnostics {
    display:none
  }
  .header-description {
    margin-left:100px;
    margin-right:auto
  }
  .hero-photos {
    grid-template-columns:380px 230px
  }
  .hero-sidebar {
    right:0
  }
  .trust-line {
    gap:16px
  }
  .trust-line>p {
    font-size:13px
  }
  .starting-price {
    right:0
  }
  .intro-block .text-column {
    max-width:763px
  }
}
@media(max-width:959px) and (min-width:640px) {
  .container {
    width:calc(100% - 40px);
    max-width:780px
  }
  .header-description,.header-diagnostics {
    display:none
  }
  .phone-icon {
    margin-left:auto
  }
  .hero-photos {
    grid-template-columns:minmax(0,1fr) minmax(0,.65fr);
    width:calc(100% - 240px);
    gap:8px
  }
  .hero-sidebar {
    width:220px
  }
  .trust-line>p {
    max-width:400px;
    font-size:12px;
    line-height:19px
  }
  .hero h1 {
    font-size:28px;
    line-height:34px;
    width:440px
  }
  .starting-price {
    font-size:28px
  }
  .discount-card {
    padding-left:15px
  }
  .price-list,.rating-summary,.review-list {
    width:100%
  }
  .review-text {
    max-width:719px;
    width:100%
  }
  .text-column {
    width:100%
  }
  .rating-bars {
    width:45%
  }
  .write-review {
    width:150px
  }
  .rating-summary {
    gap:15px
  }
}
@media(max-width:639px) {
  .container {
    width:calc(100% - 40px);
    margin-inline:20px
  }
  .site-header {
    height:62px;
    position:relative;
  }
  .header-inner {
    width:calc(100% - 40px)
  }
  .brand {
    gap:9px
  }
  .phone-icon {
    margin-left:auto
  }
  .header-description,.header-diagnostics,.header-request {
    display:none
  }
  .hero {
    height:738px
  }
  .trust-line {
    top:18px;
    display:block;
    font-size:14px
  }
  .trust-line>p {
    font-size:12px;
    line-height:19px;
    max-width:300px;
    margin-top:15px
  }
  .hero h1 {
    top:116px;
    width:300px;
    max-width:100%;
    font-size:24px;
    line-height:28.8px
  }
  .starting-price,.repair-photo,.desktop-actions {
    display:none!important
  }
  .hero-photos {
    top:216px;
    width:100%;
    height:280px;
    display:block
  }
  .hero-photos .portrait {
    height:280px;
    width:100%;
    object-position:center center
  }
  .hero-sidebar {
    left:0;
    right:auto;
    top:521px;
    width:100%
  }
  .master-card {
    margin:0 0 0 6px
  }
  .discount-card {
    margin-top:26px;
    height:107px;
    padding:18px 31px
  }
  .discount-card strong {
    font-size:21px
  }
  .discount-card>img {
    right:0
  }
  .master-rating {
    margin-top:5px
  }
  .verified {
    margin-top:5px
  }
  .intro-heading {
    padding-top:75px;
    height:105px
  }
  .intro-heading h2 {
    font-size:22px;
    line-height:26px;
    width:300px;
    max-width:100%
  }
  .intro-copy {
    padding-top:15px;
    font-size:14px;
    line-height:22px
  }
  .intro-block .text-column {
    width:323px;
    max-width:100%
  }
  .intro-0 {
    height:185px
  }
  .intro-1 {
    height:285px
  }
  .intro-1 .geography {
    font-size:12px;
    line-height:19px;
    margin-top:19px
  }
  .intro-3 {
    height:235px
  }
  .intro-4 {
    height:125px
  }
  .intro-5 {
    height:170px
  }
  .intro-7 {
    height:610px
  }
  .intro-copy ul,.intro-copy ol {
    padding-left:20px
  }
  .section-heading {
    height:125px;
    padding-top:75px
  }
  .section-heading h2 {
    font-size:28px;
    line-height:34px
  }
  .price-group-heading {
    height:125px;
    padding-top:60px
  }
  .price-group-0 .price-group-heading {
    height:80px;
    padding-top:15px
  }
  .price-group-2 .price-group-heading {
    height:105px
  }
  .price-group h3 {
    font-size:22px;
    line-height:26px;
    max-width:291px
  }
  .price-list {
    width:100%
  }
  .price-row {
    font-size:12px;
    line-height:24px;
    min-height:24px;
    grid-template-columns:minmax(0,1fr) 76px;
    gap:7px
  }
  .price-group-0 .price-list {
    margin-bottom:-4px
  }
  .price-group-1 .price-list {
    margin-bottom:2px
  }
  .rating-summary {
    height:322px;
    display:grid;
    grid-template-columns:84px 1fr;
    gap:20px;
    align-content:start;
    width:100%
  }
  .rating-bars {
    width:100%;
    gap:9px
  }
  .rating-row {
    grid-template-columns:65px 1fr 18px;
    gap:6px
  }
  .rating-stars {
    font-size:13px
  }
  .write-review {
    top:157px;
    left:0;
    right:auto;
    width:185px
  }
  .review-list {
    width:100%
  }
  .review {
    min-height:375px
  }
  .review-header {
    gap:15px
  }
  .review-meta {
    display:block;
    margin-top:12px;
    font-size:12px;
    line-height:12px
  }
  .review-meta>span {
    display:block;
    margin-top:11px
  }
  .review-meta>.stars {
    width:82px;
    height:14px
  }
  .review-text {
    width:311px;
    max-width:100%;
    font-size:14px;
    line-height:22px;
    margin-top:8px
  }
  .review-0 {
    min-height:210px
  }
  .review-2,.review-3 {
    min-height:355px
  }
  .review-6 {
    min-height:470px
  }
  .site-footer {
    height:290px;
    padding-top:45px
  }
  .site-footer>.container {
    max-width:calc(100% - 40px)
  }
  .mobile-actions {
    position:fixed;
    left:0;
    bottom:0;
    z-index:5;
    width:100%;
    padding:10px 20px;
    background:#fff;
    display:grid;
    gap:6px;
    padding-bottom:max(10px,env(safe-area-inset-bottom))
  }
  .mobile-actions>.button {
    height:54px;
    min-height:54px;
    font-size:16px;
    font-weight:700
  }
  .contact-dialog {
    max-width:calc(100vw - 40px);
    width:460px;
    max-height:calc(100dvh - 90px);
    border-radius:15px;
    z-index:10
  }
  .dialog-content {
    padding:30px 20px;
    max-height:calc(100dvh - 90px)
  }
  .contact-dialog h2 {
    font-size:24px;
    line-height:29px;
    margin-bottom:24px
  }
  .contact-form>label:not(.consent),.name-field>label {
    font-size:18px;
    line-height:24px
  }
  .dialog-close {
    top:14px;
    right:14px;
    width:24px;
    height:24px
  }
  .dialog-close::before,.dialog-close::after {
    background:white;
    width:24px;
    top:11px
  }
  .contact-dialog::backdrop {
    background:rgba(0,0,0,.55)
  }
  .consent {
    font-size:12px;
    line-height:16px
  }
  .submit-button {
    font-size:15px
  }
  .contact-dialog.is-review .dialog-content {
    padding-top:25px;
    padding-bottom:25px
  }
  .contact-dialog.is-review h2 {
    margin-bottom:18px
  }
  .is-review .name-field {
    margin-bottom:14px
  }
  .is-review .review-field {
    margin-top:14px
  }
  .is-review .consent {
    margin:18px 0
  }
  .is-review input:not([type=checkbox]) {
    height:50px
  }
  .is-review .submit-button {
    height:52px;
    min-height:52px
  }
}
@media(max-width:359px) {
  .container {
    width:calc(100% - 32px);
    margin-inline:16px
  }
  .hero h1 {
    font-size:23px
  }
  .hero-sidebar {
    top:521px
  }
  .price-row {
    font-size:11px;
    gap:4px;
    grid-template-columns:minmax(0,1fr) 66px
  }
  .intro-block {
    height:auto;
    min-height:105px
  }
  .intro-0 {
    min-height:185px
  }
  .intro-copy {
    padding-bottom:15px
  }
  .intro-1 {
    min-height:285px
  }
  .intro-3 {
    min-height:235px
  }
  .intro-5 {
    min-height:170px
  }
  .intro-7 {
    min-height:610px
  }
  .review {
    height:auto;
    padding-bottom:25px
  }
  .rating-summary {
    grid-template-columns:75px 1fr;
    gap:12px
  }
  .rating-row {
    grid-template-columns:56px 1fr 18px;
    gap:4px
  }
  .rating-stars {
    font-size:11px
  }
}
@media(prefers-reduced-motion:reduce) {
  * {
    scroll-behavior:auto!important;
    transition:none!important
  }
}
.discount-card>img {
  object-fit:cover
}
.rating-stars {
  width:82px;
  height:14px;
  object-fit:contain
}
@media(max-width:639px) {
  .rating-stars {
    max-width:65px
  }
}

/* Semantic tags can change in the builder without changing the visual role. */
.hero-title { font-size:33px; line-height:40px; font-weight:700; }
.intro-heading .editable-block { max-width:641px; font-size:24px; font-weight:700; line-height:29px; }
.section-title { font-size:30px; font-weight:700; line-height:36px; scroll-margin-top:25px; }
.price-title { font-size:24px; font-weight:700; line-height:29px; max-width:641px; }
.review-name { font-size:16px; line-height:25px; font-weight:500; }
.header-description,.header-diagnostics { min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.brand { max-width:235px; }
.brand>span { overflow:hidden; text-overflow:ellipsis; }
.brand>img { flex-shrink:0; }
.hero { height:auto; min-height:548px; display:grid; grid-template-columns:820px 300px; column-gap:40px; padding-top:18px; }
.hero .trust-line { position:static; grid-column:1/-1; grid-row:1; min-height:24px; }
.hero .hero-title { position:static; grid-column:1; grid-row:2; width:auto; max-width:820px; margin:18px 0 0; overflow-wrap:anywhere; }
.hero .starting-price { position:static; grid-column:2; grid-row:2; align-self:end; margin:18px 0 5px; text-align:right; overflow-wrap:anywhere; }
.hero .hero-photos { position:static; grid-column:1; grid-row:3; margin-top:29px; }
.hero .hero-sidebar { position:static; grid-column:2; grid-row:3; margin-top:30px; }
.hero .master-name { overflow-wrap:anywhere; }
.hero .discount-card>strong { overflow-wrap:anywhere; font-size:clamp(16px,1.5vw,21px); }
.introduction .intro-block { height:auto; min-height:0; }
.introduction .intro-heading { padding-top:75px; }
.introduction .intro-copy { padding-top:15px; padding-bottom:5px; }
.editable-block { overflow-wrap:anywhere; position:static; width:auto; }
.price-title,.section-title,.review-name,.master-name { position:static; left:auto; top:auto; width:auto; }
.hero .starting-price { width:auto; max-width:100%; }
.price-group .price-group-heading { height:auto; min-height:105px; padding-top:60px; padding-bottom:16px; }
.price-group-0 .price-group-heading { height:auto; min-height:60px; padding-top:15px; padding-bottom:16px; }
.price-group .price-list { margin-bottom:0; }
.price-row dt,.price-row dd { overflow-wrap:anywhere; }
.price-row dd { white-space:normal; }
.review-list .review { min-height:0; padding-bottom:40px; }
.review-text { overflow-wrap:anywhere; }
.site-footer { height:auto; min-height:260px; padding-bottom:80px; }
.form-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; }
.site-notice { position:fixed; z-index:2147483647; left:50%; bottom:155px; transform:translateX(-50%); max-width:calc(100% - 30px); background:#253048; color:white; padding:13px 20px; border-radius:9px; font:14px/1.5 Arial,sans-serif; box-shadow:0 6px 20px #0002; }
.builder-editing [data-edit-key],.builder-editing [data-image-key],.builder-editing [data-edit-kind] { cursor:crosshair!important; }
.builder-hover { outline:2px dashed #8872df!important; outline-offset:4px; }
.builder-selected { outline:3px solid #7a60d8!important; outline-offset:4px; background-color:#a78bfa0b; }
.section-heading,.rating-summary { height:auto; min-height:130px; }
.rating-summary { min-height:140px; }
@media(max-width:1199px) and (min-width:960px) {
  .hero { grid-template-columns:610px 300px; column-gap:30px; }
}
@media(max-width:959px) and (min-width:640px) {
  .hero { grid-template-columns:minmax(0,1fr) 220px; column-gap:20px; }
  .hero .hero-photos { width:100%; }
  .hero .hero-title { font-size:28px; line-height:34px; }
}
@media(max-width:639px) {
  .hero { min-height:738px; display:flex; flex-direction:column; padding-top:18px; }
  .hero .trust-line { min-height:77px; }
  .hero .hero-title { font-size:24px; line-height:28.8px; width:300px; max-width:100%; margin-top:21px; }
  .hero .hero-photos { margin-top:14px; flex-shrink:0; width:100%; height:280px; }
  .hero .hero-sidebar { margin-top:25px; width:100%; }
  .intro-heading .editable-block { width:300px; max-width:100%; font-size:22px; line-height:26px; }
  .section-title { font-size:28px; line-height:34px; }
  .section-heading { min-height:125px; }
  .price-title { font-size:22px; line-height:26px; max-width:291px; }
  .price-group .price-group-heading { min-height:105px; padding-bottom:16px; }
  .price-group-0 .price-group-heading { min-height:80px; }
  .rating-summary { min-height:322px; }
  .review-list .review { padding-bottom:28px; }
  .site-footer { min-height:290px; padding-bottom:160px; }
}
