/* Mio Decor 8.64.12 — SEO copy, FAQ and customer reviews.
   Dedicated owners; mobile Figma geometry with legible body text.
   No priority rules, no clipped content or global overflow masking. */
.content-section {background:#fff; padding-block:clamp(34px,4.4vw,66px) 18px;}
.content-section > .container.narrow {width:min(1080px,calc(100% - 48px)); margin-inline:auto; min-width:0;}
.content-section .section-title.content-title-split {
  margin:0 0 30px; text-align:center; font:700 clamp(24px,2.5vw,36px)/1.24 var(--mio-font-heading);
  letter-spacing:-.025em; color:#10151b; overflow-wrap:break-word;
}
.content-section .section-title.content-title-split .accent {color:#5691b8;}
.content-section .prose {margin:0; font:400 14px/1.76 var(--mio-font-body); color:#4e5a67; overflow-wrap:break-word;}
.content-section .prose p {margin:0 0 20px;}
.content-section .prose p:last-child {margin-bottom:0;}

#faq {padding-block:36px 24px; background:#fff;}
#faq > .container {min-width:0;}
#faq .faq-main-title {
  margin:0 0 28px; font:700 clamp(23px,2.5vw,34px)/1.23 var(--mio-font-heading);
  color:#5691b8; text-align:center; letter-spacing:-.015em; overflow-wrap:break-word;
}
#faq .faq-two-col {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px;}
#faq .faq-column {display:block; min-width:0; width:auto; align-self:start;}
#faq .faq-item {min-width:0; border-bottom:1px solid #dce5ed;}
#faq .faq-item:first-child {border-top:1px solid #dce5ed;}
#faq .faq-column:nth-child(2) .faq-item:first-child {border-top:1px solid #dce5ed;}
#faq .faq-item > button {
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  width:100%; min-height:51px; margin:0; padding:12px 0; border:0;
  text-align:left; background:transparent; color:#263645;
  font:500 13px/1.45 var(--mio-font-body); cursor:pointer;
}
#faq .faq-item > button > span {flex:1; min-width:0; overflow-wrap:anywhere;}
#faq .faq-item > button b {flex:0 0 22px; font:400 20px/1 var(--mio-font-body); text-align:center; color:#73889a;}
#faq .faq-item > button:focus-visible {outline:2px solid #276a9b; outline-offset:-2px; border-radius:3px;}
#faq .faq-answer {display:block; padding:1px 20px 18px 0;}
#faq .faq-answer[hidden] {display:none;}
#faq .faq-answer p {margin:0; font:400 12px/1.68 var(--mio-font-body); color:#536171; overflow-wrap:break-word;}

.reviews-section {background:#fff; padding:28px 0 48px; max-width:100%;}
.reviews-section > .container {min-width:0;}
.reviews-section .reviews-shell {display:grid; grid-template-columns:290px minmax(0,1fr); gap:24px; align-items:start; min-width:0;}
.reviews-section .review-summary {
  display:flex; flex-direction:column; align-items:stretch; justify-content:center;
  width:100%; min-width:0; min-height:185px; margin:0; padding:22px 24px;
  border:1px solid #e0e7ee; border-radius:10px; background:#fff;
}
.reviews-section .review-source-top {display:flex; align-items:center; gap:13px; min-width:0;}
.reviews-section .review-google-mark {display:block; width:28px; height:28px; flex:0 0 28px; object-fit:contain;}
.reviews-section .review-source-top > div {min-width:0;}
.reviews-section .review-source-top strong {display:block; font:700 15px/1.3 var(--mio-font-heading); color:#26313e; overflow-wrap:break-word;}
.reviews-section .review-source-top span {display:block; font:400 10px/1.4 var(--mio-font-body); color:#8b96a3;}
.reviews-section .stars {margin:16px 0 15px; font:400 21px/1 var(--mio-font-body); letter-spacing:.11em; color:#f9ae00; white-space:nowrap;}
.reviews-section .review-summary-divider {width:100%; height:1px; background:#e6ecf1; margin-bottom:14px;}
.reviews-section .review-summary-link {display:flex; align-items:center; gap:12px; color:#26313e; text-decoration:none;}
.reviews-section .review-summary-link:focus-visible {outline:2px solid #276a9b; outline-offset:3px;}
.reviews-section .trusted-mark {width:27px; height:27px; flex:0 0 27px; border-radius:50%; background:#0a0a0a;}
.reviews-section .review-summary-link small {display:block; font:400 10px/1.35 var(--mio-font-body); color:#8b96a3;}
.reviews-section .review-summary-link b {display:block; font:700 12px/1.3 var(--mio-font-heading); color:#26313e;}
.reviews-section .reviews-slider-shell {position:relative; min-width:0; max-width:100%;}
.reviews-section .reviews-slider-viewport {min-width:0; overflow:hidden;}
.reviews-section .review-grid.reviews-track {
  display:flex; align-items:stretch; gap:14px; width:100%; min-width:0;
  padding:0 1px 3px; margin:0; overflow-x:auto; overflow-y:hidden;
  scroll-snap-type:x mandatory; scroll-padding-inline:1px; scrollbar-width:none;
}
.reviews-section .review-grid.reviews-track::-webkit-scrollbar {display:none;}
.reviews-section .review-grid.reviews-track:focus-visible {outline:3px solid #276a9b; outline-offset:-4px; border-radius:9px;}
.reviews-section .review-card {
  flex:0 0 min(280px,85%); width:min(280px,85%); height:auto; min-height:278px;
  display:flex; flex-direction:column; min-width:0; margin:0; padding:20px 21px;
  background:#f2f2f2; border:0; border-radius:14px; scroll-snap-align:start;
}
.reviews-section .review-card::before {content:none; display:none;}
.reviews-section .review-card__stars {margin:0 0 16px; color:#ffb300; font-size:19px; line-height:1; letter-spacing:.07em;}
.reviews-section .review-card__head {display:flex; align-items:center; gap:11px; min-width:0; margin:0 0 15px;}
.reviews-section .review-avatar--ts {
  display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px;
  border-radius:50%; color:#fff; background:#5691b8; font:700 15px/1 var(--mio-font-heading);
}
.reviews-section .review-card__meta {min-width:0;}
.reviews-section .review-card__meta h3 {margin:0; font:700 13px/1.24 var(--mio-font-heading); color:#26313e; overflow-wrap:anywhere;}
.reviews-section .review-card__meta small {display:block; margin-top:3px; font:400 10px/1.4 var(--mio-font-body); color:#8b96a3; overflow-wrap:anywhere;}
.reviews-section .review-card p {
  display:block; margin:0 0 16px; max-width:none; overflow:visible;
  font:400 12px/1.48 var(--mio-font-body); color:#303943;
  overflow-wrap:break-word; -webkit-line-clamp:unset;
}
.reviews-section .review-card__footer {margin-top:auto; padding-top:6px;}
.reviews-section .review-card__footer span {display:block; margin-bottom:4px; font:400 10px/1.35 var(--mio-font-body); color:#8894a1;}
.reviews-section .review-card__footer b {font:700 12px/1.3 var(--mio-font-heading); color:#5691b8;}
.reviews-section .reviews-prev,.reviews-section .reviews-next {
  position:absolute; top:calc(50% - 16px); z-index:3; width:36px; height:36px;
  transform:translateY(-50%); display:grid; place-items:center;
  border:1px solid #dbe7ef; border-radius:50%; background:#fff;
  color:#518eb8; box-shadow:0 2px 9px rgba(10,35,56,.13);
  font:500 23px/1 var(--mio-font-body); cursor:pointer;
}
.reviews-section .reviews-prev {left:0;}
.reviews-section .reviews-next {right:0;}
.reviews-section .reviews-prev:disabled,.reviews-section .reviews-next:disabled {opacity:.35; cursor:default;}
.reviews-section .reviews-prev:focus-visible,.reviews-section .reviews-next:focus-visible {outline:3px solid #276a9b; outline-offset:2px;}
@media (max-width:1100px) {
  #faq .faq-two-col {grid-template-columns:minmax(0,1fr); gap:0;}
  #faq .faq-column:nth-child(2) .faq-item:first-child {border-top:0;}
  .reviews-section .reviews-shell {grid-template-columns:minmax(0,1fr); gap:25px;}
  .reviews-section .review-summary {width:min(300px,100%); justify-self:center;}
}
@media (max-width:760px) {
  .content-section {padding:28px 0 10px;}
  .content-section > .container.narrow {width:calc(100% - 2 * var(--mio-container-gutter)); max-width:340px;}
  .content-section .section-title.content-title-split {font-size:20px; line-height:1.3; text-align:left; margin-bottom:28px;}
  .content-section .prose {font-size:13px; line-height:1.65;}
  .content-section .prose p {margin-bottom:19px;}
  #faq {padding:17px 0 20px;}
  #faq > .container {width:calc(100% - 2 * var(--mio-container-gutter)); max-width:340px;}
  #faq .faq-main-title {font-size:20px; line-height:1.24; margin:0 0 17px; text-align:left;}
  #faq .faq-column {width:100%;}
  #faq .faq-column+.faq-column {margin-top:0;}
  #faq .faq-item > button {min-height:45px; padding:10px 0; font-size:12px; line-height:1.4; gap:9px;}
  #faq .faq-item > button b {font-size:17px;}
  #faq .faq-answer {padding:3px 12px 13px 0;}
  #faq .faq-answer p {font-size:11.5px; line-height:1.55;}
  .reviews-section {padding:22px 0 48px;}
  .reviews-section > .container {width:calc(100% - 2 * var(--mio-container-gutter)); max-width:340px;}
  .reviews-section .reviews-shell {display:grid; grid-template-columns:minmax(0,1fr); gap:26px;}
  .reviews-section .review-summary {width:min(300px,100%); max-width:100%; min-height:180px; padding:19px 20px; justify-self:center; border-radius:9px;}
  .reviews-section .review-source-top strong {font-size:13px;}
  .reviews-section .review-source-top span {font-size:10px;}
  .reviews-section .reviews-slider-viewport {width:100%;}
  .reviews-section .review-grid.reviews-track {padding:0 2px 3px; gap:12px;}
  .reviews-section .review-card {flex:0 0 min(296px,96%); width:min(296px,96%); min-height:282px; padding:23px 19px; border-radius:12px;}
  .reviews-section .review-card p {font-size:12px; line-height:1.5;}
  /* Put navigation below the review instead of covering content on touch screens. */
  .reviews-section .reviews-slider-shell {
    display:grid; grid-template-columns:minmax(0,1fr) 34px 34px;
    column-gap:9px; row-gap:10px; justify-items:end;
  }
  .reviews-section .reviews-slider-viewport {
    grid-column:1 / -1; grid-row:1; width:min(296px,100%);
    margin-inline:auto; justify-self:center;
  }
  .reviews-section .review-card {flex:0 0 100%; width:100%;}
  .reviews-section .reviews-prev,.reviews-section .reviews-next {
    position:static; inset:auto; transform:none;
    width:34px; height:34px; font-size:21px;
  }
  .reviews-section .reviews-prev {grid-column:2; grid-row:2;}
  .reviews-section .reviews-next {grid-column:3; grid-row:2;}
}
@media (max-width:359px) {
  .content-section .section-title.content-title-split,#faq .faq-main-title {font-size:19px;}
  .reviews-section .review-card {flex-basis:min(100%,296px); width:min(100%,296px); padding-inline:15px;}
}
@media (prefers-reduced-motion:reduce) {
  .reviews-section .review-grid.reviews-track {scroll-behavior:auto;}
}
