/* Niche adaptation of the approved Service Sites Lab component system. */
:root{--blue:#2359db;--blue-dark:#1645b8;--ink:#202936;--muted:#586577;--soft:#f3f6fa}
.topbar,.footer-topbar{gap:24px}.mattress-brand{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex-shrink:0}.mattress-brand img{width:160px;height:auto;object-fit:contain;filter:brightness(0) saturate(100%) invert(29%) sepia(90%) saturate(2965%) hue-rotate(218deg) brightness(90%)}.mattress-brand small{display:none}.header-local-proof{line-height:1.4;white-space:nowrap}.header-local-proof b{font-size:17px}.header-local-proof small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.contact-message{display:flex;align-items:center;gap:8px;padding:10px 12px;color:var(--blue);background:#edf3ff;border-radius:10px;font-size:12px;font-weight:700}.contact-message .ui-icon{width:20px;height:20px}.header-contact .header-phone{display:block;white-space:nowrap}.header-contact small{gap:8px;display:flex;align-items:center;justify-content:flex-end}.header-contact .text-link{display:block;white-space:nowrap}.navigation{gap:15px;font-size:12px}.navigation>a{white-space:nowrap}.nav-cta{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.hero-stage{min-height:570px;background:#f2f5f9}.hero-copy{width:59%;padding:60px 0 48px 38px}.hero-copy h1{font-size:49px;max-width:660px;line-height:1.15}.hero-copy h1::first-line{color:var(--blue)}.hero-description{max-width:495px}.hero-visual{inset:0 0 0 49%}.hero-visual img{object-position:66% center}.hero-visual:after{background:linear-gradient(90deg,#f2f5f9 0%,#f2f5f9ed 8%,#f2f5f945 27%,transparent 43%)}.hero-action{flex-wrap:wrap;gap:20px}.hero-catalog-link{color:var(--blue);font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:5px}.hero-checks{flex-wrap:wrap;gap:16px}.hero-checks span{display:inline-flex;align-items:center;gap:6px}.hero-checks .ui-icon{width:16px;height:16px}.photo-caption{right:18px;bottom:20px}.benefit-strip{gap:22px}.benefit-strip>div{min-width:0}.benefit-strip b{line-height:1.35}.benefit-icon{width:38px!important;height:38px!important;min-width:38px;flex:0 0 38px!important;object-fit:contain;padding:8px;border-radius:10px;background:#edf2ff}.sl-section{padding:72px 0}.section-hero{padding:20px 0 36px}.section-quiz{padding-top:40px}.section-heading h2{font-size:39px}.section-description{font-size:15px;max-width:380px;line-height:1.65}.quiz-main{height:550px;min-height:550px}.quiz-options.text-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quiz-options.text-options label{min-height:92px;padding:16px 32px}.quiz-options.text-options b{font-size:14px}.quiz-expert>img{height:185px;object-fit:cover;object-position:center}.quiz-topline{letter-spacing:.5px}.quiz-navigation{justify-content:space-between;height:58px;min-height:58px}.quiz-step h3:focus{outline:0}.quiz-options input:focus-visible+b{outline:2px solid var(--blue);outline-offset:4px;border-radius:4px}.quiz-navigation small{color:var(--muted)}.section-catalog{padding-bottom:36px}.catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.catalog-filters{display:flex;gap:8px;flex-wrap:wrap}.catalog-filters button{padding:11px 17px;border-radius:9px;background:var(--soft);font-size:13px;font-weight:650;color:var(--ink)}.catalog-filters button[aria-pressed=true]{color:white;background:var(--blue)}.catalog-filters button span{opacity:.7;margin-left:6px}.catalog-count{font-size:12px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.product-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;background:#fff}.product-image{display:block;position:relative;background:white;padding:16px;width:100%;aspect-ratio:1.72;overflow:hidden}.product-image>img{width:100%;height:100%;object-fit:contain}.image-expand{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#edf3ff;color:var(--blue)}.image-expand .ui-icon{width:18px;height:18px}.product-body{padding:24px;display:flex;flex-direction:column;flex:1}.product-overline{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:16px}.product-overline>span{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:1px;color:var(--blue)}.product-overline small{font-size:10px;color:var(--muted)}.product-body h3{font-size:27px;margin-bottom:18px}.product-specs{font-size:12px;margin:0 0 18px;display:grid;gap:7px}.product-specs>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #eef1f5;padding-bottom:6px}.product-specs dt{color:var(--muted)}.product-specs dd{margin:0;font-weight:650;text-align:right}.product-body>p{font-size:13px;line-height:1.7;color:var(--muted);min-height:66px}.product-details{font-size:12px;color:var(--muted);margin-bottom:22px}.product-details summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;color:var(--ink);font-weight:650;padding:5px 0}.product-details summary::-webkit-details-marker{display:none}.product-details summary .ui-icon{width:15px;height:15px;color:var(--blue)}.product-details[open] summary .ui-icon{transform:rotate(45deg)}.product-details p{margin:12px 0 0;line-height:1.7}.product-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.product-bottom strong{font-size:23px;letter-spacing:-.6px;white-space:nowrap}.small-button{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:9px;border-radius:9px;background:#edf3ff;color:var(--blue);padding:13px 14px;font-weight:750;font-size:12px;white-space:nowrap}.small-button .ui-icon{width:16px;height:16px}.catalog-help{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:20px}.catalog-help p{font-size:13px;color:var(--muted);margin:0}.catalog-help a{white-space:nowrap;display:flex;align-items:center;gap:8px}.section-sizes{padding-top:32px}.section-sizes .section-heading{margin-bottom:26px}.size-options{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.size-button{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--soft);border-radius:12px;padding:22px;font-weight:700;font-size:17px;color:var(--ink)}.size-button .ui-icon{width:19px;height:19px;color:var(--blue)}.section-gallery{background:var(--soft)}.mattress-gallery{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:260px 260px;gap:18px}.mattress-gallery .gallery-item{height:auto;min-height:0;width:auto;border-radius:16px;position:relative}.mattress-gallery .gallery-item:first-child{grid-row:auto}.mattress-gallery .gallery-item img{width:100%;height:100%;object-fit:cover}.mattress-gallery .gallery-item:after{background:linear-gradient(transparent 25%,#101d38cf)}.mattress-gallery .gallery-item>span{left:24px;right:40px;bottom:24px}.mattress-gallery b{font-size:21px}.mattress-gallery small{font-size:13px}.mattress-gallery .image-expand{z-index:2;background:#fff}.section-cta p{font-size:13px;color:var(--muted);margin:6px 0 0}.delivery-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.delivery-photo{position:relative;align-self:stretch;min-height:455px;border-radius:20px;overflow:hidden}.delivery-photo>.delivery-image{width:100%;height:100%;padding:0;background:#edf0f5}.delivery-photo img{width:100%;height:100%;object-fit:cover;object-position:47% center}.delivery-badge{position:absolute;left:22px;right:22px;bottom:22px;border-radius:12px;background:#ffffffed;padding:20px;display:flex;flex-direction:column;pointer-events:none}.delivery-badge strong{color:var(--blue);font-size:28px}.delivery-badge span{font-size:13px}.delivery-points>div{display:flex;gap:18px;margin-bottom:24px}.point-check{width:32px;height:32px;border-radius:9px;background:#edf3ff;color:var(--blue);flex-shrink:0;display:grid;place-items:center}.point-check .ui-icon{width:18px;height:18px}.delivery-points h3{font-size:21px;margin:0 0 8px}.delivery-points p{color:var(--muted);font-size:14px;line-height:1.6;margin:0}.review-proof-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:26px}.review-proof-bar a{display:flex;flex-direction:column;gap:4px}.review-proof-bar b{font-size:22px}.review-proof-bar span{font-size:13px;color:var(--blue)}.review-proof-bar p{font-size:13px;color:var(--muted);margin:0}.source-reviews{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:20px}.source-reviews>button{min-width:0;background:white;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.source-reviews img{width:100%;height:auto;object-fit:contain}.source-reviews span{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--blue);margin-top:12px}.process-grid{gap:28px}.process-number{display:block;color:var(--blue);font-size:32px;font-weight:800;margin-bottom:18px}.process-grid h3{font-size:20px;margin-bottom:12px}.process-grid p{font-size:14px;line-height:1.65}.section-faq>.container{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.section-faq .section-heading{display:block;margin:0}.faq-list summary{font-size:16px;line-height:1.5}.faq-list summary .ui-icon{flex-shrink:0;width:20px;height:20px}.faq-list p{font-size:14px;line-height:1.7}.section-lead .consultation-layout{grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}.section-lead .section-heading{display:block;max-width:none}.section-lead .section-description{max-width:540px;margin-top:22px}.consultation-photo{margin:0;height:430px}.consultation-photo img{object-position:55% center}.consultation-photo small{display:block;font-size:13px;font-weight:500}.places-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.place-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white}.place-primary{border-color:#cddaf5}.place-photo{width:100%;height:270px;object-fit:cover}.place-body{padding:28px}.place-body .eyebrow{font-size:10px;margin-bottom:12px}.place-body h3{font-size:27px;margin-bottom:8px}.place-body>p{font-size:15px;color:var(--muted)}.place-body ul{padding-left:19px;color:var(--muted);font-size:14px;line-height:1.9;margin:20px 0 25px}.place-actions{display:flex;justify-content:space-between;align-items:center;gap:15px}.place-actions a{font-size:13px;color:var(--blue);display:flex;align-items:center;gap:6px}.footer{padding:35px 0 40px;border:0}.footer>.container:first-child{display:block}.footer-topbar{display:flex;justify-content:space-between;align-items:center}.footer-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-top:40px}.footer-bottom>div{max-width:310px}.footer-bottom p,.footer-bottom b,.footer-bottom a{font-size:11px;line-height:1.7}.footer-bottom p{margin:3px 0}.footer-bottom .legal-links{display:flex;flex-direction:column;gap:8px}.footer .header-phone{font-size:19px!important;color:var(--ink)!important}.footer .text-link{color:var(--blue)!important}.footer .header-local-proof b{font-size:17px}.legal-page{padding:65px 0;max-width:850px;min-height:50vh}.legal-page h1{font-size:38px;margin-bottom:28px}.legal-page p{font-size:16px}.sl-section:focus{outline:0}.floating-contact img{width:26px;height:26px}.ui-icon.icon-messages-square{mask-image:url('assets/icons/messages-square.svg')}.ui-icon.icon-plus{mask-image:url('assets/icons/plus.svg')}
@media(max-width:1100px){.header-local-proof{display:none}.hero-copy h1{font-size:41px}.product-body{padding:19px}.product-bottom{flex-wrap:wrap}.product-bottom strong{font-size:22px}.navigation{font-size:11px;gap:10px;padding-left:14px}.nav-cta{font-size:11px;padding:13px 10px}.hero-action .button{padding:18px 20px}.section-heading{gap:35px}.section-description{max-width:320px}}
@media(max-width:760px){.topbar{height:auto;min-height:90px;padding-top:12px;padding-bottom:12px;gap:12px;flex-wrap:wrap}.mattress-brand img{width:120px;height:auto}.header-messengers,.topbar .header-location{display:none}.header-contact .header-phone{font-size:17px!important}.header-contact small{font-size:9px}.header-contact .text-link{font-size:11px}.navigation{display:flex;overflow:auto;padding:12px 15px;gap:22px;font-size:12px;max-width:calc(100% - 32px)}.nav-cta{display:none}.hero-stage{min-height:0;display:flex;flex-direction:column}.hero-copy{width:100%;padding:28px 24px 20px;order:0}.hero-copy h1{font-size:34px;letter-spacing:-1px;line-height:1.15}.hero-description{font-size:15px;margin:20px 0}.hero-visual{position:relative;inset:auto;height:270px;order:1}.hero-visual:after{display:none}.hero-visual img{object-position:center 43%}.hero-checks{font-size:11px;gap:10px}.hero-action{gap:20px}.hero-action .button{font-size:13px;padding:17px 20px}.hero-catalog-link{font-size:12px}.hero-copy .fine-print{font-size:10px}.photo-caption{bottom:14px;left:14px;right:14px;padding:12px 16px}.benefit-strip{grid-template-columns:1fr 1fr;gap:23px 14px;padding:25px 0 0}.benefit-strip>div{gap:9px}.benefit-strip b{font-size:12px}.benefit-strip p{font-size:11px}.benefit-icon{width:32px!important;height:32px!important;min-width:32px;flex-basis:32px!important;padding:6px}.sl-section{padding:46px 0}.section-hero{padding:16px 0 24px}.section-quiz{padding-top:24px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:29px;letter-spacing:-.8px}.section-description{font-size:14px;max-width:none;margin-top:17px}.eyebrow{font-size:9px}.quiz-main{height:700px;min-height:700px;padding:22px}.quiz-topline{font-size:9px;gap:12px;letter-spacing:0}.quiz-topline>span:first-child{max-width:150px}.quiz-step h3{font-size:24px}.quiz-options.text-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quiz-options.text-options label{min-height:96px;padding:14px 25px}.quiz-options.text-options b{font-size:13px}.quiz-options.text-options .radio-dot{right:7px}.quiz-expert{display:none}.quiz-navigation small{display:block;font-size:10px}.quiz-explanation{font-size:13px}.catalog-tools{display:block}.catalog-filters{gap:8px;margin-bottom:13px}.catalog-filters button{font-size:12px;padding:10px 13px}.catalog-count{font-size:11px}.product-grid{grid-template-columns:1fr;gap:20px}.product-image{aspect-ratio:1.7;padding:18px}.product-body{padding:22px}.product-body h3{font-size:27px}.product-specs{font-size:13px}.product-body>p{font-size:14px;min-height:0}.product-overline>span{font-size:11px}.product-overline small{font-size:10px}.product-bottom{flex-wrap:nowrap}.product-bottom strong{font-size:24px}.small-button{font-size:12px;padding:13px}.catalog-help{display:block}.catalog-help a{margin-top:14px}.section-catalog{padding-bottom:12px}.section-sizes{padding-top:22px}.size-options{grid-template-columns:1fr 1fr;gap:9px}.size-button{padding:17px;font-size:14px}.mattress-gallery{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4,250px);overflow:visible}.mattress-gallery .gallery-item{width:100%;height:250px}.mattress-gallery .gallery-item>span{left:20px;bottom:20px}.mattress-gallery b{font-size:21px}.mattress-gallery small{font-size:12px}.section-cta{padding:23px;margin-top:22px}.section-cta b{font-size:17px}.section-cta .button{font-size:13px;padding:16px 20px}.delivery-layout{grid-template-columns:1fr;gap:28px}.delivery-photo{min-height:300px;height:300px}.delivery-badge{padding:14px;left:15px;right:15px;bottom:15px}.delivery-badge strong{font-size:25px}.delivery-points h3{font-size:20px}.delivery-points p{font-size:14px}.review-proof-bar{display:block}.review-proof-bar b{font-size:20px}.review-proof-bar p{margin-top:16px}.source-reviews{display:grid;grid-template-columns:1fr;overflow:visible}.source-reviews>button{padding:12px}.source-reviews span{font-size:12px}.process-grid{grid-template-columns:1fr 1fr;gap:28px 20px}.process-number{font-size:28px;margin-bottom:12px}.process-grid h3{font-size:18px}.process-grid p{font-size:13px}.section-faq>.container{display:block}.section-faq .section-heading{margin-bottom:27px}.faq-list summary{font-size:15px}.faq-list p{font-size:14px;margin-right:0}.section-lead .consultation-layout{grid-template-columns:1fr;gap:30px}.consultation-photo{height:300px}.places-grid{grid-template-columns:1fr}.place-photo{height:240px}.place-body{padding:23px}.place-body h3{font-size:26px}.place-body>p{font-size:14px}.place-body ul{font-size:13px}.place-actions{gap:10px}.footer-topbar{display:flex;flex-wrap:wrap;gap:22px;align-items:center}.footer-topbar .header-location{display:flex;order:3;width:100%}.footer-topbar .header-messengers{display:block;order:4}.footer-topbar .header-contact{margin-left:auto}.footer-bottom{display:grid;grid-template-columns:1fr;gap:20px;margin-top:30px}.footer-bottom p{display:block}.footer-bottom>div{max-width:none}.footer-bottom p,.footer-bottom b,.footer-bottom a{font-size:12px}.footer .header-phone{font-size:17px!important}.footer .header-contact small{font-size:9px}.floating-contact{width:48px;height:48px;right:16px;bottom:16px}.legal-page h1{font-size:29px}.lead-dialog h2{font-size:28px}}
/* Final visual audit corrections: consistent grids, visible subjects, inline icons. */
.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.mattress-gallery .gallery-item:nth-child(2)>img{object-position:center 25%}
.mattress-gallery .gallery-item:nth-child(3)>img{object-position:center 35%}
.review-proof-bar a>span,.source-reviews button>span{display:flex;align-items:center;gap:8px}
.header-local-proof b{display:block}
@media(max-width:760px){.process-grid{grid-template-columns:1fr 1fr}.quiz-main{height:650px;min-height:650px}.quiz-navigation{padding-right:24px}.quiz-navigation small{font-size:10px}.mattress-gallery .gallery-item:nth-child(2)>img{object-position:center top}}
.mattress-gallery .gallery-item:nth-child(2)>img,.mattress-gallery .gallery-item:nth-child(3)>img{object-position:center top}
.product-specs{font-size:14px}.product-body>p{font-size:15px}.product-details{font-size:13px}.footer-bottom p,.footer-bottom b,.footer-bottom a{font-size:13px}
@media(max-width:760px){.product-specs{font-size:13px}.footer-bottom p,.footer-bottom b,.footer-bottom a{font-size:12px}}
/* Match the approved automotive composition, with mattress content. */
.mattress-brand img{width:160px;height:auto;aspect-ratio:253/88;filter:none}
.topbar,.footer-topbar{justify-content:space-between;gap:24px}
.header-messengers{display:flex;flex-direction:column;gap:8px;margin:0;flex-shrink:0}
.header-messengers>small{font-size:11px}.header-messengers .messenger-links{display:flex;gap:8px}
.header-messengers .messenger-link{width:45px;height:45px;padding:10px;display:grid;place-items:center}
.header-messengers .messenger-link img{width:25px;height:25px}.header-messengers .messenger-link span{display:none}
.mattress-header-ratings{display:flex;min-width:180px}.mattress-header-ratings a{position:relative;display:grid;grid-template-columns:34px auto;column-gap:9px;row-gap:0;align-items:center}
.mattress-header-ratings img{grid-column:1;grid-row:1 / 3;width:32px;height:32px}.mattress-header-ratings b{font-size:17px;line-height:1.35}.mattress-header-ratings small{font-size:12px;line-height:1.35}.mattress-header-ratings em{grid-column:2;font-size:10px;font-style:normal;color:var(--muted);margin-top:3px;white-space:nowrap}
/* Callback matches the automotive reference: one underlined text run, including ↗. Keep the inherited 6px/3px contact rhythm. */
.hero-stage{min-height:612px}.hero-copy{width:61%;padding:60px 0 46px 40px}.hero-copy h1{font-size:49px;max-width:690px;line-height:1.16}.hero-description{max-width:490px;line-height:1.7}.hero-visual{inset:0 0 0 39%}.hero-visual img{object-position:76% center}.hero-visual:after{background:linear-gradient(90deg,#f2f5f9 0%,#f2f5f9ed 12%,#f2f5f985 26%,transparent 43%)}.photo-caption{right:22px;bottom:24px}.hero-action{margin-top:28px}.hero-action .button{font-size:15px;padding:22px 28px}.hero-catalog-link{font-size:14px}
.catalog-tools{display:none}.product-grid{margin-top:0}.product-overline{margin-bottom:18px}.product-body h3{font-size:28px}
.mattress-gallery{grid-template-columns:1.2fr 1fr;grid-template-rows:260px 260px;gap:18px}
.mattress-gallery .gallery-item{height:260px}.mattress-gallery .gallery-item:first-child{grid-row:1 / 3;height:538px}.mattress-gallery .gallery-item:first-child>img{object-position:right center}.mattress-gallery .gallery-item:nth-child(2)>img,.mattress-gallery .gallery-item:nth-child(3)>img{object-position:center center}.mattress-gallery .gallery-item>span b{font-size:24px}.mattress-gallery .gallery-item:after{background:linear-gradient(transparent 42%,#142844ce)}
.mattress-review-ratings{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;margin-bottom:28px}.mattress-review-ratings>a:first-child{display:flex;align-items:center;gap:14px}.mattress-review-ratings .rating-logo{width:44px;height:44px}.mattress-review-ratings>a>div{display:flex;flex-wrap:wrap;align-items:center;column-gap:12px;row-gap:2px;max-width:320px}.mattress-review-ratings b{font-size:20px}.mattress-review-ratings strong{font-size:18px}.mattress-review-ratings strong span{font-size:15px;color:#eeab19}.mattress-review-ratings small{font-size:12px;width:100%;color:var(--muted)}.reviews-city-link{display:flex;align-items:center;gap:10px;color:var(--blue);font-size:13px}
.review-card{display:flex;flex-direction:column;min-height:370px;padding:27px}.review-person{gap:12px}.review-person b{font-size:16px}.review-person small{font-size:12px}.review-initial{display:grid;place-items:center;font-size:22px;font-weight:700;color:var(--blue);background:#eaf0ff;flex-shrink:0}.review-card:nth-child(2) .review-initial{background:#e9f2fa;color:#33618a}.review-card:nth-child(3) .review-initial{background:#eeedfd;color:#6960ae}.review-card .stars{margin:22px 0 16px}.review-card .review-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;font-size:16px;line-height:1.65;margin:0}.review-card .review-text.expanded{display:block}.review-expand{align-self:flex-start;margin-top:10px;font-size:13px}.review-bottom{margin-top:auto;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted)}.review-bottom small{font-size:12px}.review-bottom a{color:var(--blue)}
@media(max-width:1100px){.mattress-header-ratings{display:none}.hero-copy h1{font-size:40px}.hero-copy{width:65%}.mattress-brand img{width:150px}.review-card{padding:20px}.review-person{gap:8px}.review-person b{font-size:14px}.review-person .avatar{width:38px;height:38px}.review-person .platform-mini{width:20px;height:20px}}
@media(max-width:760px){.mattress-brand img{width:120px;height:auto}.header-messengers{display:none}.topbar,.footer-topbar{gap:14px}.hero-copy{width:100%;padding:28px 24px 22px}.hero-copy h1{font-size:33px;line-height:1.18}.hero-visual{position:relative;inset:auto;height:290px}.hero-visual img{object-position:74% center}.hero-visual:after{display:none}.hero-stage{min-height:0}.hero-action .button{font-size:14px;padding:19px 22px}.hero-description{font-size:15px}.hero-catalog-link{font-size:13px}.mattress-gallery{grid-template-columns:1fr;grid-template-rows:330px 250px 250px}.mattress-gallery .gallery-item:first-child{grid-row:auto;height:330px}.mattress-gallery .gallery-item{height:250px}.mattress-review-ratings{align-items:flex-start;gap:18px;flex-direction:column}.mattress-review-ratings b{font-size:18px}.reviews-city-link{font-size:12px}.review-card{min-height:0;padding:24px}.review-card .review-text{font-size:15px}.review-person b{font-size:16px}.review-person .avatar{width:44px;height:44px}.footer-topbar .header-messengers{display:flex;flex-direction:column;align-items:flex-start;width:auto}.footer-topbar .header-messengers .messenger-links{display:flex}.footer-topbar .header-messengers .messenger-link{width:42px;height:42px}.footer-topbar .header-messengers>small{font-size:11px}.footer-topbar .header-ratings{display:none}}
.review-topic{font-size:12px;color:var(--muted);letter-spacing:0;line-height:26px}
.mattress-review-ratings strong{display:flex;align-items:center;gap:8px}.mattress-review-ratings strong span{display:inline}
/* Marquiz light: one stable canvas for choice, text input and contact steps. */
.quiz-text-label{display:block;max-width:480px;margin-top:24px;font-size:14px;color:var(--muted)}
.quiz-text-answer{display:block;width:100%;box-sizing:border-box;margin-top:10px;padding:18px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);font:inherit;font-size:16px}
.quiz-text-answer:focus{outline:none;border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.quiz-text-answer[aria-invalid=true]{border-color:#b42318}
.quiz-options.text-options{grid-template-columns:repeat(2,minmax(0,1fr))}
.quiz-options.text-options b{min-height:0;line-height:1.45;text-align:center}
.quiz-navigation [data-next][hidden]{display:none}
@media(max-width:760px){.quiz-navigation small{max-width:95px}.quiz-navigation .button{padding:12px 16px;font-size:13px;gap:8px}.quiz-options.text-options label{padding:14px 26px 14px 16px}}
@media(max-width:760px){.quiz-navigation{padding-right:0;gap:12px}.quiz-navigation .button{flex-shrink:0}.quiz-navigation small{min-width:0;max-width:90px}.quiz-navigation .button>.ui-icon{width:18px;height:18px}}
@media(max-width:760px){.quiz-options.text-options:has(label:nth-child(2):last-child){grid-template-columns:1fr}.quiz-options.text-options:has(label:nth-child(2):last-child) label{min-height:80px}}
/* Original complete wordmark and mattress silhouette; white spring inserts. */
.mattress-brand img{filter:none}
.mattress-header-ratings{gap:24px;min-width:0;flex-shrink:0}
.mattress-header-ratings .city-rating,.mattress-review-ratings .city-rating{display:flex;align-items:center;gap:9px;position:static}
.city-rating-copy{display:grid;grid-template-columns:auto;gap:1px;min-width:0}
.city-rating-copy b{font-size:16px;line-height:1.25;color:var(--ink)}
.city-rating-copy .city-rating-score{font-size:12px;line-height:1.4;color:var(--muted);white-space:nowrap}
.city-rating-copy .rating-stars{color:#eeab19;letter-spacing:0}
.mattress-header-ratings .city-rating small,.mattress-header-ratings .city-rating em{grid-column:auto;margin:0;font-size:10px;line-height:1.35;color:var(--muted);font-style:normal;white-space:nowrap}
.mattress-header-ratings .city-rating img{width:30px;height:30px;flex-shrink:0}
.mattress-review-ratings{justify-content:flex-start;gap:56px}
.mattress-review-ratings .city-rating>.city-rating-copy{display:grid;max-width:none;gap:3px}
.mattress-review-ratings .city-rating b{font-size:21px}
.mattress-review-ratings .city-rating-score{font-size:17px}
.mattress-review-ratings .city-rating small,.mattress-review-ratings .city-rating em{font-size:13px;line-height:1.4;font-style:normal;color:var(--muted);margin:0}
@media(min-width:1101px) and (max-width:1350px){.topbar,.footer-topbar{gap:18px}.mattress-brand img{width:150px}.mattress-header-ratings{gap:14px}.topbar .header-location,.footer-topbar .header-location{gap:8px}.header-contact .header-phone{font-size:18px!important}}
@media(max-width:760px){.mattress-review-ratings{flex-direction:row;flex-wrap:wrap;gap:24px 32px}.mattress-review-ratings .rating-logo{width:32px;height:32px}.mattress-review-ratings .city-rating b{font-size:17px}.mattress-review-ratings .city-rating-score{font-size:14px}.mattress-review-ratings .city-rating small,.mattress-review-ratings .city-rating em{font-size:11px}}
/* Two side-by-side addresses, each with its own map link. */
.header-locations{display:flex;flex-direction:row;align-items:center;gap:24px;flex-shrink:0}
.header-locations .header-location{display:flex;margin:0;min-height:34px;gap:12px}
.header-locations .header-location small{white-space:nowrap}
@media(max-width:1100px){.topbar .header-locations{display:none}.footer-topbar .header-locations{display:flex}}
@media(max-width:760px){.footer-topbar .header-locations{order:3;width:100%}.footer-topbar .header-locations .header-location{width:auto}}

@media(min-width:1101px) and (max-width:1350px){.header-locations{gap:14px}.topbar,.footer-topbar{gap:14px}.header-locations .header-location{gap:8px}.header-locations .location-badge{width:30px;height:30px;flex-basis:30px}}
@media(max-width:760px){.footer-topbar .header-locations{gap:18px;flex-wrap:wrap}}

/* One photographic series, on a fixed quiz canvas. Photos are decorative;
   the complete answer remains the accessible radio label. */
.quiz-question-content{margin-top:16px;min-width:0}
.quiz-options.photo-options{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;gap:12px}
.quiz-options.photo-options:has(label:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.quiz-options.photo-options label{display:grid;grid-template-columns:minmax(0,1fr) 20px;grid-template-rows:auto 1fr;align-items:center;gap:0;padding:0;min-width:0;position:relative}
.quiz-options.photo-options .quiz-option-image{grid-column:1 / -1;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;display:block}
.quiz-options.photo-options:has(label:nth-child(2):last-child) .quiz-option-image{max-height:180px}
.quiz-options.photo-options b{display:flex;align-items:center;justify-content:center;min-height:68px;margin:0;padding:10px 6px 10px 24px;font-size:14px;line-height:1.4;text-align:center}
.quiz-options.photo-options .radio-dot{position:static;transform:none;width:18px;height:18px;margin:0 12px 0 -6px}
.quiz-options.photo-options label:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px #2459df30}
.quiz-question-content.has-question-photo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px;align-items:center}
.quiz-question-photo{min-width:0;overflow:hidden;border-radius:12px;background:var(--soft)}
.quiz-question-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.has-question-photo .quiz-options.text-options{margin:0;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.has-question-photo .quiz-options.text-options label{padding:14px 28px;min-height:92px}
.has-question-photo .quiz-options.text-options .radio-dot{right:7px}
.has-question-photo .quiz-text-label{margin:0;max-width:none}
@media(min-width:761px) and (max-width:1100px){
 .quiz-layout{grid-template-columns:minmax(0,1fr) 220px}
 .quiz-question-content.has-question-photo{grid-template-columns:1fr;gap:12px}
 .quiz-question-photo{width:210px;justify-self:center}
 .quiz-question-photo img{aspect-ratio:3/2}
 .has-question-photo .quiz-options.text-options label{min-height:65px}
 .quiz-options.photo-options{gap:8px}
 .quiz-options.photo-options b{font-size:13px;min-height:76px;padding-left:10px}
}

/* A brief invitation, followed by a long quiet interval. */
.floating-contact{isolation:isolate;overflow:visible;padding:0}
.floating-contact>img{width:24px;height:24px;flex:0 0 24px}
.floating-contact::before,.floating-contact::after{content:"";position:absolute;inset:0;border:1px solid #2459df;border-radius:inherit;pointer-events:none;opacity:0;animation:contact-ripple 12s ease-out 8s infinite;z-index:-1}
.floating-contact::after{animation-delay:8.35s}
.floating-contact>img{transform-origin:50% 55%;animation:contact-ring 12s ease-in-out 8s infinite}
@keyframes contact-ring{0%,10%,100%{transform:rotate(0)}2%{transform:rotate(-12deg)}4%{transform:rotate(10deg)}6%{transform:rotate(-7deg)}8%{transform:rotate(4deg)}}
@keyframes contact-ripple{0%{opacity:.38;transform:scale(1)}14%{opacity:0;transform:scale(1.48)}15%,100%{opacity:0;transform:scale(1.48)}}
.floating-contact:hover>img,.floating-contact:focus-visible>img,body:has(dialog[open]) .floating-contact>img{animation:none;transform:none}
.floating-contact:hover::before,.floating-contact:hover::after,.floating-contact:focus-visible::before,.floating-contact:focus-visible::after,body:has(dialog[open]) .floating-contact::before,body:has(dialog[open]) .floating-contact::after{animation:none;opacity:0}
@media(prefers-reduced-motion:reduce){.floating-contact>img,.floating-contact::before,.floating-contact::after{animation:none!important}}
@media(max-width:760px){
 .quiz-options.photo-options,.quiz-options.photo-options:has(label:nth-child(2):last-child){grid-template-columns:1fr;gap:10px}
 .quiz-options.photo-options label{grid-template-columns:108px minmax(0,1fr) 24px;grid-template-rows:1fr;gap:0;padding:0;min-height:76px}
 .quiz-options.photo-options .quiz-option-image{grid-column:1;height:76px;width:108px;aspect-ratio:auto;object-fit:cover}
 .quiz-options.photo-options b{font-size:13px;min-height:76px;padding:8px 6px;text-align:center}
 .quiz-options.photo-options .radio-dot{margin:0;width:17px;height:17px}
 .quiz-question-content.has-question-photo{grid-template-columns:1fr;gap:14px}
 .quiz-question-photo{width:min(100%,240px);justify-self:center}
 .quiz-question-photo img{aspect-ratio:3/2}
 .has-question-photo .quiz-options.text-options label{min-height:68px;padding:12px 27px 12px 12px}
 .has-question-photo .quiz-options.text-options:has(label:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
 .quiz-text-answer{margin-top:7px;padding:15px}
}

/* Hero promotion follows the automotive reference: gift, timer, short caption. */
.hero-action .mattress-offer{min-width:0}
.mattress-offer small{white-space:nowrap}
.mattress-offer.offer-expired b{color:var(--muted)}
.hero-copy .offer-terms{margin-top:16px;margin-bottom:0;max-width:510px}

/* Clean quiz cards: the native radio remains accessible, without a decorative dot. */
.quiz-navigation small{line-height:1.4}
.quiz-navigation:has([data-next]:not([hidden])) small{display:none}
.quiz-navigation .back-button,.quiz-navigation [data-next]{flex-shrink:0}
@media(max-width:760px){
 .quiz-navigation small{flex:1;max-width:none;text-align:right}
}
.quiz-options input[type=radio]{width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.quiz-options.photo-options label{grid-template-columns:minmax(0,1fr)}
.quiz-options.photo-options b{padding:10px 16px}
.quiz-options.text-options label,.has-question-photo .quiz-options.text-options label{padding:14px 16px}
.quiz-options label:focus-within{outline:none}
.quiz-options.photo-options label:focus-within{box-shadow:none}
.quiz-options input:focus-visible+b{outline:none}
.quiz-options label:has(input:checked){border-color:var(--blue);background:#edf3ff;box-shadow:0 0 0 1px var(--blue)}
.quiz-options label:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:3px}

/* A slow gray outline passes from card to card, with a softer trailing accent.
   Each unanswered choice question gets this cue; inputs and navigation never do. */
.quiz-choice-guidance [data-step]:not([hidden]) .quiz-options label::after{content:"";position:absolute;inset:0;border:2px solid #9aa8bb;border-radius:inherit;pointer-events:none;z-index:1;opacity:0;animation:quiz-choice-wave var(--choice-cycle,6.6s) ease-in-out infinite;animation-delay:var(--choice-delay,.7s)}
.quiz-choice-guidance .quiz-options:has(input:focus-visible) label::after,.quiz-choice-guidance .quiz-options label:hover::after{animation:none;opacity:0}
@keyframes quiz-choice-wave{0%,44%,100%{opacity:0}12%,18%{opacity:1}29%{opacity:.42}}
@media(max-width:760px){
 .quiz-options.photo-options label{grid-template-columns:108px minmax(0,1fr)}
 .quiz-options.photo-options b{padding:8px 12px}
 .quiz-options.text-options label,.has-question-photo .quiz-options.text-options label{padding:12px}
}
@media(prefers-reduced-motion:reduce){.quiz-choice-guidance [data-step]:not([hidden]) .quiz-options label::after{animation:none;opacity:0}}

/* Keep the visible quiz-to-catalog gap aligned with neighboring connected sections. */
.section-quiz{padding-bottom:36px}
.section-catalog{padding-top:36px}
@media(max-width:760px){
 .section-quiz{padding-bottom:26px}
 .section-catalog{padding-top:26px;padding-bottom:24px}
}

.delivery-photo .image-expand{top:16px;right:16px;bottom:auto;z-index:2;background:#fff}
