/*
Theme Name: Morzh Appliance Repair - One-Click Chat v4.9
Theme URI: https://morzhserv.com/
Author: Morzh Service
Description: Lightweight SEO-focused WordPress theme for Albert Pogosov Appliance Repair, with online booking and chat.
Version: 4.9.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: morzh-appliance-fresh
*/
:root{--ink:#10263e;--blue:#1264a3;--blue2:#0d4f83;--muted:#56687a;--line:#dbe5ec;--bg:#f5f9fc;--white:#fff;--green:#13785e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:white}a{color:var(--blue)}img{max-width:100%;height:auto}h1,h2,h3{line-height:1.17;letter-spacing:-.028em;margin:0 0 .7em}h1{font-size:clamp(2.4rem,5vw,4.7rem)}h2{font-size:clamp(1.9rem,3.5vw,2.8rem)}h3{font-size:1.32rem}p{margin:0 0 1.2em}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.topline{background:#10263e;color:#dcecf6;font-size:.86rem;padding:8px 0}.topline .wrap{display:flex;justify-content:space-between;gap:15px}.topline a{color:#fff}.site-header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{font-weight:850;color:var(--ink);text-decoration:none;font-size:1.12rem;line-height:1.2}.brand small{display:block;font-size:.72rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-top:6px}.main-nav{display:flex;align-items:center;gap:21px}.main-nav a{color:var(--ink);text-decoration:none;font-weight:650;font-size:.91rem}.main-nav a:hover{color:var(--blue)}.nav-actions{display:flex;align-items:center;gap:10px}.btn,.hcp-button{appearance:none;border:0;cursor:pointer;border-radius:10px;padding:14px 22px;font:inherit;font-size:.98rem;font-weight:750;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--blue);color:#fff;transition:background .15s,transform .15s}.btn:hover,.hcp-button:hover{background:var(--blue2);color:#fff;transform:translateY(-1px)}.btn.outline{background:transparent;color:var(--blue);border:1.5px solid var(--blue)}.btn.outline:hover{background:#ecf5fd}.btn.light{background:#fff;color:var(--blue)}.btn.light:hover{background:#e6f4ff}.hamburger{display:none;background:transparent;border:1px solid var(--line);font-size:1.5rem;border-radius:8px;padding:4px 12px}.hero{background:radial-gradient(circle at 78% 20%,#d8efff 0,transparent 36%),linear-gradient(130deg,#f7fbfe,#e9f4fc);padding:88px 0 76px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:48px}.eyebrow{display:inline-block;color:var(--blue2);font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}.lead{font-size:1.16rem;color:#435c70;max-width:650px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.hero-visual{position:relative;border-radius:28px;box-shadow:0 28px 58px #214b7226;color:#fff;min-height:365px;overflow:hidden;background:#dfeaf4}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,40,68,.08),rgba(8,40,68,.35));z-index:1}.hero-photo{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}.hero-card{position:absolute;bottom:18px;left:18px;right:18px;background:#ffffffed;padding:13px 17px;border-radius:12px;color:var(--ink);font-weight:750;z-index:2;backdrop-filter:blur(5px)}.trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}.trust span{padding:6px 12px;border:1px solid #bcd8e7;background:#fff;border-radius:20px;font-size:.83rem;font-weight:700}.section{padding:80px 0}.section.gray{background:var(--bg)}.section-head{max-width:720px;margin-bottom:34px}.section-head p{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.card{padding:27px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 8px 22px #0e3c5b08}.card p{color:var(--muted)}.card a.more{font-weight:750;text-decoration:none}.service-card{padding:0;overflow:hidden}.card-media{aspect-ratio:4/3;overflow:hidden;background:#eef5fa}.card-media img{width:100%;height:100%;object-fit:cover;display:block}.card-body{padding:22px 24px 25px}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.checklist{list-style:none;padding:0;margin:20px 0}.checklist li{margin:10px 0;padding-left:27px;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--green);font-weight:850}.panel{background:#e9f5ff;border:1px solid #cce6f9;padding:35px;border-radius:19px}.areas{display:flex;gap:11px;flex-wrap:wrap;margin-top:20px}.area-pill{border:1px solid var(--line);border-radius:24px;padding:9px 16px;background:#fff;color:var(--ink);text-decoration:none;font-weight:650}.area-pill:hover{border-color:var(--blue)}.cta{background:#0c3c64;color:#fff;padding:65px 0}.cta p{color:#d8eafa}.cta-flex{display:flex;justify-content:space-between;gap:30px;align-items:center}.site-footer{background:#0c2337;color:#d7e4ed;padding:48px 0 20px}.site-footer a{color:#e6f4ff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-grid h3{color:#fff;font-size:1.05rem}.footer-grid ul{margin:0;padding:0;list-style:none}.footer-grid li{margin-bottom:10px}.copyright{border-top:1px solid #ffffff26;margin-top:42px;padding-top:22px;font-size:.82rem;color:#b8cada}.page-head{background:#eff7fc;padding:65px 0}.page-head h1{font-size:clamp(2rem,4vw,3.4rem);max-width:900px}.content-section{padding:66px 0}.reading{max-width:800px}.reading h2{margin-top:38px}.reading ul{padding-left:22px}.two-col{display:grid;grid-template-columns:1.5fr .75fr;gap:55px}.sidebar-panel{position:sticky;top:115px;align-self:start}.posts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.post-tile{border:1px solid var(--line);padding:25px;border-radius:15px}.post-tile h2{font-size:1.35rem}.post-tile time{font-size:.8rem;color:var(--muted)}.pagination{margin:30px 0}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px)}.skip-link:focus{clip:auto;z-index:100;top:5px;left:5px;background:white;padding:12px}.mobile-cta{display:none}.notice{padding:17px;border-left:4px solid var(--blue);background:#f1f7fc;margin:25px 0}.wp-block-image img{border-radius:12px}@media(max-width:1000px){.main-nav{gap:10px}.main-nav a{font-size:.82rem}.nav-actions .btn{display:none}.hero-grid{gap:23px}}@media(max-width:760px){.wrap{width:min(100% - 30px,1160px)}.topline .wrap{flex-direction:column;gap:0}.nav-wrap{min-height:72px}.hamburger{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:20px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.hero{padding:57px 0}.hero-grid,.split,.two-col,.page-head-grid{grid-template-columns:1fr}.hero-visual{min-height:260px}.section{padding:55px 0}.cards,.posts-grid{grid-template-columns:1fr}.cta-flex{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.mobile-cta{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;padding:9px;background:#fff;box-shadow:0 -3px 18px #061f3630;z-index:40;gap:8px}.mobile-cta .btn,.mobile-cta .hcp-button{padding:12px 7px;font-size:.86rem;border-radius:7px}.site-footer{padding-bottom:100px}.sidebar-panel{position:static}.page-head-visual{order:2}}@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.brand{font-size:1rem}.hero .buttons>*{flex:1}.hero-visual{padding:18px}.card{padding:22px}}

/* v1.5: preserve complete technician compositions and make person visible */
.hero-visual{min-height:420px}.hero-photo{object-fit:cover;object-position:70% center}.card-media{aspect-ratio:4/3}.card-media img{object-fit:cover;object-position:center}.page-head-visual img{object-fit:cover;object-position:center}
@media(max-width:760px){.hero-photo{object-position:72% center}}

/* California Proposition 65 optional warning and information link */
.morzh-prop65-warning{padding:18px 0;background:#fff5d9;color:#312914;border-top:2px solid #c68c1b;font-size:.95rem}.morzh-prop65-warning a{color:#143e6b;text-decoration:underline}.prop65-footer-link{padding:14px 0 2px;font-size:.9rem}.prop65-footer-link a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* Navigation anchors: keep headings visible beneath the sticky header */
#services, #contact { scroll-margin-top: 112px; }

/* v3.0: Make each service card one accessible link. */
.service-card-link{display:block;color:var(--ink);text-decoration:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.service-card-link:visited{color:var(--ink)}
.service-card-link .card-body h3{color:var(--ink)}
.service-card-link .card-body .more{color:var(--blue);font-weight:750}
.service-card-link:hover,.service-card-link:focus-visible{transform:translateY(-4px);box-shadow:0 16px 32px #0e3c5b22;border-color:#78b9e5}
.service-card-link:hover .more,.service-card-link:focus-visible .more{text-decoration:underline}
.service-card-link:focus-visible{outline:3px solid #1264a3;outline-offset:3px}
.service-card-link:hover .card-media img{transform:scale(1.035)}
.service-card-link .card-media img{transition:transform .22s ease}
@media (prefers-reduced-motion:reduce){.service-card-link,.service-card-link .card-media img{transition:none}.service-card-link:hover,.service-card-link:focus-visible{transform:none}}

/* v3.2: Useful homepage content and accessible native FAQ accordions */
.morzh-problems-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.morzh-problem{padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 22px #0e3c5b08}.morzh-problem h3{margin-bottom:12px}.morzh-problem p{color:var(--muted)}.morzh-problem a{font-weight:750;text-underline-offset:3px}.morzh-faq-list{max-width:920px;display:grid;gap:12px}.morzh-faq-list details{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.morzh-faq-list summary{font-weight:750;cursor:pointer;padding:19px 52px 19px 21px;position:relative;list-style:none}.morzh-faq-list summary::-webkit-details-marker{display:none}.morzh-faq-list summary::after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--blue);font-size:1.5rem}.morzh-faq-list details[open] summary::after{content:'−'}.morzh-faq-list summary:hover{background:#f2f8fc}.morzh-faq-list summary:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}.morzh-faq-answer{padding:0 21px 18px;color:var(--muted)}.morzh-faq-answer p{margin:0}.morzh-faq-cta{display:flex;gap:22px;flex-wrap:wrap;align-items:center;margin-top:30px}.morzh-faq-cta p{margin:0}@media(max-width:760px){.morzh-problems-grid{grid-template-columns:1fr}.morzh-problem{padding:22px}.morzh-faq-cta{align-items:flex-start;flex-direction:column}}

/* v3.4: Genuine technician trust signals; optional photo and external profile links. */
.morzh-trust-section{background:#fff}
.morzh-trust-layout{display:flex;gap:54px;align-items:center}
.morzh-trust-copy{flex:1;min-width:0;max-width:820px}
.morzh-trust-visual{flex:0 1 40%;margin:0}
.morzh-trust-copy>p{color:var(--muted)}
.morzh-trust-years{display:inline-flex;align-items:center;gap:8px;background:#edf8f3;color:#125d48!important;border:1px solid #bee9d7;padding:11px 18px;border-radius:12px;font-weight:650}
.morzh-trust-years strong{color:#0d6046;font-size:1.2rem}
.morzh-trust-profiles{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 26px}
.morzh-trust-profile{display:inline-block;padding:10px 16px;border:1px solid #b9d9ee;background:#f3f9fe;border-radius:10px;font-weight:700;text-decoration:none}
.morzh-trust-profile:hover,.morzh-trust-profile:focus-visible{background:#e0f0fd;text-decoration:underline}
.morzh-trust-qualifications{margin:20px 0;border-left:4px solid #1264a3;padding:10px 20px;background:#f3f9fd;border-radius:0 12px 12px 0}
.morzh-trust-visual img,.morzh-about-photo img{width:100%;height:auto;display:block;border-radius:18px;box-shadow:0 12px 32px #153d5818}
.morzh-trust-visual figcaption,.morzh-about-photo figcaption{font-size:.82rem;color:#647687;margin-top:9px}
@media(max-width:760px){.morzh-trust-layout{flex-direction:column;align-items:stretch;gap:25px}.morzh-trust-visual{flex:auto}}

/* v3.5 Yelp official embed carousel */
.morzh-yelp-section{background:#fff8f7;border-top:1px solid #f2dfdc;border-bottom:1px solid #f2dfdc}
.morzh-yelp-carousel,.morzh-yelp-empty{max-width:760px;margin:0 auto;background:#fff;border:1px solid #eadbd9;border-radius:20px;padding:28px;box-shadow:0 12px 34px #58230a0b}
.morzh-yelp-slide[hidden]{display:none!important}
.morzh-yelp-slides{min-height:220px}
.morzh-yelp-slide{max-width:100%;overflow-wrap:anywhere}
.morzh-yelp-controls{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:18px;padding-top:16px;border-top:1px solid #eee4e0}
.morzh-yelp-nav{border:1px solid #dfa8a1;color:#8b241e;background:#fff;padding:11px 16px;border-radius:10px;cursor:pointer;font:inherit;font-weight:700}
.morzh-yelp-nav:hover,.morzh-yelp-nav:focus-visible{background:#fff1ef;border-color:#bd4a39}
.morzh-yelp-counter{font-weight:700;color:#654744;min-width:64px;text-align:center}
.morzh-yelp-link{text-align:center;margin:22px 0 0}
@media(max-width:760px){.morzh-yelp-carousel,.morzh-yelp-empty{padding:14px}.morzh-yelp-controls{gap:9px}.morzh-yelp-nav{font-size:.9rem;padding:10px}}

/* v3.8 - accessible, high-contrast header navigation & prominent booking */
.main-nav{gap:clamp(5px,1vw,12px)}
.main-nav a{display:inline-flex;align-items:center;justify-content:center;padding:10px 11px;border-radius:9px;white-space:nowrap;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease}
.main-nav a:hover,.main-nav a:focus-visible{color:#fff;background:#1264a3;text-decoration:none}
.main-nav a.nav-reviews{background:#fff1eb;color:#a83d16;font-weight:800}
.main-nav a.nav-reviews:hover,.main-nav a.nav-reviews:focus-visible{background:#c0481a;color:#fff}
.main-nav a:focus-visible,.nav-actions .hcp-button:focus-visible,.hcp-button:focus-visible{outline:3px solid #123e65;outline-offset:3px}
#customer-reviews{scroll-margin-top:105px}
/* All Housecall Pro booking buttons: clear orange call-to-action */
.hcp-button,.btn.hcp-button{background:#e65b17;color:#fff;border:2px solid #b93c05;box-shadow:0 5px 15px rgba(169,64,12,.20);font-weight:850;letter-spacing:.005em;transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}
.hcp-button:hover,.hcp-button:focus-visible,.btn.hcp-button:hover{background:#b94208;color:#fff;transform:translateY(-2px);box-shadow:0 9px 22px rgba(169,64,12,.30)}
.nav-actions .hcp-button{padding:13px 16px;white-space:nowrap;min-height:48px}
.cta .hcp-button{background:#fff;color:#84320a;border-color:#fff;box-shadow:0 5px 20px rgba(0,0,0,.22)}
.cta .hcp-button:hover,.cta .hcp-button:focus-visible{background:#ffe1c8;color:#753006;border-color:#ffe1c8}
@media(max-width:1100px){.nav-wrap{gap:10px}.main-nav{gap:2px}.main-nav a{font-size:.81rem;padding:9px 7px}.brand{font-size:1.02rem}.nav-actions .hcp-button{padding:11px 12px;font-size:.85rem}}
@media(max-width:900px){.hamburger{display:block;order:2}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:3px;background:#fff;padding:12px max(16px,calc((100vw - 1160px)/2)) 20px;border-bottom:1px solid var(--line);box-shadow:0 15px 22px #10263e20;max-height:calc(100vh - 90px);overflow-y:auto}.main-nav.open{display:flex}.main-nav a{justify-content:flex-start;padding:12px 16px;font-size:.95rem}.nav-actions{margin-left:auto}.nav-wrap{position:relative}.nav-actions .hcp-button{font-size:.88rem;padding:11px 14px}}
@media(max-width:760px){.main-nav{top:100%;padding:12px 15px 20px}.nav-actions{display:none}.mobile-cta .hcp-button{background:#e65b17!important;color:#fff!important;border-color:#b93c05!important;min-height:46px}.mobile-cta .btn.outline{min-height:46px;display:flex;align-items:center;justify-content:center}}
@media(prefers-reduced-motion:reduce){.main-nav a,.hcp-button{transition:none}.hcp-button:hover{transform:none}}


/* v4.0: More visible and interactive Yelp reviews carousel */
.morzh-yelp-section{background:radial-gradient(circle at 15% 10%,#fff6f2 0,#fff6f2 16%,transparent 45%),linear-gradient(180deg,#fff9f6,#fff3ee);border-top:1px solid #f2ddd6;border-bottom:1px solid #f2ddd6}
.morzh-yelp-head{text-align:center;margin-inline:auto}
.morzh-yelp-head h2{max-width:720px;margin-inline:auto}
.morzh-yelp-head p{max-width:720px;margin-inline:auto;color:#6e5951}
.morzh-yelp-shell{position:relative;max-width:940px;margin:0 auto}
.morzh-yelp-badge{position:absolute;top:-14px;left:26px;z-index:3;background:#d32323;color:#fff;padding:9px 16px;border-radius:999px;font-weight:800;letter-spacing:.02em;box-shadow:0 8px 18px #d3232328}
.morzh-yelp-carousel,.morzh-yelp-empty{position:relative;max-width:940px;margin:0 auto;background:linear-gradient(180deg,#ffffff,#fff8f5);border:1px solid #efd7d0;border-radius:26px;padding:34px 28px 26px;box-shadow:0 24px 54px #7a2c1214,0 3px 10px #7a2c1209;overflow:hidden}
.morzh-yelp-carousel:before{content:"";position:absolute;inset:auto -60px -90px auto;width:240px;height:240px;background:radial-gradient(circle,#ffd8be 0,rgba(255,216,190,0) 70%);pointer-events:none}
.morzh-yelp-progress{height:6px;background:#f3e3df;border-radius:999px;overflow:hidden;margin-bottom:20px}
.morzh-yelp-progress span{display:block;height:100%;width:100%;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,#d32323,#ff8748)}
.morzh-yelp-stage{overflow:hidden;position:relative;padding:4px}
.morzh-yelp-track{display:flex;align-items:stretch;transition:transform .6s cubic-bezier(.22,.61,.36,1);will-change:transform}
.morzh-yelp-slide{min-width:100%;padding:10px;opacity:.72;transform:scale(.96);transition:opacity .55s ease,transform .55s ease,filter .55s ease;filter:saturate(.88)}
.morzh-yelp-slide.is-active{opacity:1;transform:scale(1);filter:none}
.morzh-yelp-card-frame{background:#fff;border:1px solid #f1e2de;border-radius:20px;padding:18px;min-height:255px;box-shadow:0 18px 38px #51210b0e}
.morzh-yelp-controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:20px;padding-top:18px;border-top:1px solid #efe3de}
.morzh-yelp-status{display:flex;flex-direction:column;align-items:center;gap:12px}
.morzh-yelp-nav{border:0;color:#fff;background:linear-gradient(135deg,#cf3827,#e6652d);padding:13px 18px;border-radius:13px;cursor:pointer;font:inherit;font-weight:800;box-shadow:0 10px 20px #c94a2626;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.morzh-yelp-nav:hover,.morzh-yelp-nav:focus-visible{transform:translateY(-2px);box-shadow:0 14px 26px #c94a2633;filter:brightness(1.03)}
.morzh-yelp-counter{font-weight:800;color:#5d443f;min-width:72px;text-align:center;letter-spacing:.04em}
.morzh-yelp-dots{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.morzh-yelp-dot{width:12px;height:12px;border-radius:50%;border:0;background:#e8c9c0;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.morzh-yelp-dot:hover,.morzh-yelp-dot:focus-visible{transform:scale(1.16);background:#f28c59}
.morzh-yelp-dot.is-active{background:#d32323;box-shadow:0 0 0 4px #f9d6d0}
.morzh-yelp-link{text-align:center;margin:24px 0 0}.morzh-yelp-cta{font-size:1rem;padding:15px 24px;border-width:2px;background:#fff;color:#b7372c;border-color:#e4a89b;box-shadow:0 8px 20px #b8492010}.morzh-yelp-cta:hover{background:#fff0eb;color:#a32820}
@media(max-width:760px){.morzh-yelp-badge{left:16px;top:-11px;font-size:.85rem;padding:8px 13px}.morzh-yelp-carousel,.morzh-yelp-empty{padding:24px 16px 18px;border-radius:22px}.morzh-yelp-card-frame{padding:12px;min-height:210px}.morzh-yelp-controls{grid-template-columns:1fr;gap:14px}.morzh-yelp-nav{width:100%}.morzh-yelp-status{order:-1}.morzh-yelp-slide{padding:4px}}

/* v4.1: Helpful service FAQs and contextual linking */
.morzh-service-faq{margin:42px 0 28px}.morzh-service-faq details{margin:10px 0;border:1px solid #dbe5ec;border-radius:12px;background:#f9fcff;padding:15px 18px}.morzh-service-faq summary{cursor:pointer;font-weight:750;color:#153e62}.morzh-service-faq details[open] summary{margin-bottom:10px}.morzh-service-faq details p{margin:0;color:#475b6c}.morzh-service-area-link{margin:25px 0}.morzh-related-services{margin:38px 0;padding:24px;border-radius:16px;background:#eef7fe;border:1px solid #cce3f3}.morzh-related-services h2{font-size:1.4rem;margin-bottom:10px}.morzh-related-services ul{padding-left:20px;margin-bottom:0}.morzh-related-services li{margin:8px 0}

/* v4.2 — Yelp widget sandbox isolation and stable mobile booking area */
.morzh-yelp-review-frame{display:block;width:100%;height:345px;border:0;border-radius:12px;background:#fff;overflow:hidden;max-width:100%}
.morzh-yelp-review-fallback{font-size:.85rem;text-align:center;margin:10px 0 0}
.morzh-yelp-review-fallback a{color:#a22c21;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.morzh-yelp-card-frame{min-width:0;overflow:hidden}
.morzh-yelp-slide{min-width:100%;max-width:100%;flex:0 0 100%;min-height:0}
.morzh-yelp-track{width:100%;align-items:flex-start}
@media(max-width:760px){
  .mobile-cta{left:0;right:0;width:100%;max-width:100vw;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:8px max(10px,env(safe-area-inset-right)) max(9px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));box-sizing:border-box;overflow:hidden}
  .mobile-cta>.btn,.mobile-cta>.hcp-button{display:flex;min-width:0;width:100%;max-width:100%;white-space:normal;text-align:center;line-height:1.2;overflow-wrap:anywhere;padding:10px 6px}
  body{padding-bottom:calc(65px + env(safe-area-inset-bottom))}
  .morzh-yelp-review-frame{height:390px}
  .morzh-yelp-card-frame{padding:8px}
}
@media(prefers-reduced-motion:reduce){.morzh-yelp-track,.morzh-yelp-slide{transition:none!important}.morzh-yelp-progress span{transition:none!important}}

/* v4.3: Restore official Yelp widgets in the parent page and avoid empty iframe cards. */
.morzh-yelp-review-frame,.morzh-yelp-review-fallback{display:none!important}
.morzh-yelp-card-frame{min-height:170px;padding:16px 20px;overflow:visible}
.morzh-yelp-card-frame .yelp-review{display:block;max-width:100%;overflow-wrap:anywhere}
.morzh-yelp-card-frame iframe{display:block;max-width:100%;width:100%;border:0;min-height:0}
.morzh-yelp-slide{min-height:0;align-self:flex-start}
.morzh-yelp-stage{overflow:hidden}
@media(max-width:760px){.morzh-yelp-card-frame{padding:10px;min-height:130px}.morzh-yelp-slide{padding:4px}}


/* v4.4 — active review sizing, reliable controls, and usable mobile navigation */
.morzh-yelp-carousel{padding-bottom:19px}
.morzh-yelp-stage{height:auto;min-height:170px;overflow:hidden;transition:height .3s ease}
.morzh-yelp-track{align-items:flex-start}
.morzh-yelp-slide{height:auto;min-height:0}
.morzh-yelp-card-frame{padding:12px 16px;min-height:0}
.morzh-yelp-card-frame iframe{vertical-align:top}
.morzh-yelp-controls{margin-top:10px;padding-top:12px;position:relative;z-index:2}
.morzh-yelp-nav,.morzh-yelp-nav:visited{background:linear-gradient(135deg,#ce3321,#e95d25)!important;color:#fff!important;opacity:1!important;visibility:visible!important;min-width:130px}
.morzh-yelp-nav:hover,.morzh-yelp-nav:focus-visible{background:linear-gradient(135deg,#ad2819,#cd4a15)!important;color:#fff!important}
.morzh-yelp-nav:focus-visible,.morzh-yelp-dot:focus-visible,.morzh-yelp-jump:focus-visible{outline:3px solid #166ab0;outline-offset:3px}
.morzh-yelp-jump-label{display:none;font-size:.83rem;font-weight:700;color:#634740;align-items:center;gap:8px}
.morzh-yelp-jump{font:inherit;font-weight:700;background:#fff;border:1px solid #d9aea2;border-radius:9px;color:#573b33;padding:7px 12px;min-width:140px;max-width:100%}
.morzh-yelp-dots{gap:8px}
.morzh-yelp-dot{flex:0 0 auto}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:clip}
  .morzh-yelp-carousel{padding:22px 12px 15px}
  .morzh-yelp-slide{padding:3px}
  .morzh-yelp-card-frame{padding:7px}
  .morzh-yelp-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:8px;padding-top:11px}
  .morzh-yelp-status{grid-column:1/-1;grid-row:1;order:initial}
  .morzh-yelp-jump-label{display:flex;flex-wrap:wrap;justify-content:center}
  .morzh-yelp-dots{display:none}
  .morzh-yelp-nav{min-width:0;width:100%;font-size:.9rem;padding:13px 6px}
  .mobile-cta{position:fixed;z-index:2147483000;isolation:isolate;box-shadow:0 -6px 22px rgba(6,31,54,.21)}
  /* Move provider chat launchers above the persistent booking strip. */
  iframe[src*="chat.housecallpro.com"],iframe[src*="proChat"],iframe[id*="proChat"],iframe[id*="housecall"],iframe[class*="housecall"]{bottom:calc(78px + env(safe-area-inset-bottom))!important}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.morzh-yelp-stage{transition:none}}

/* v4.5: Move template-only presentation out of inline style attributes. */
.morzh-service-area-more{margin-top:24px}
.cta .morzh-cta-eyebrow{color:#aedcff}
.morzh-page-contact-space{margin-top:15px}
.morzh-post-contact-space{margin-top:16px}

/* v4.5: Preserve usable bottom booking controls and leave a mobile safe zone for chat. */
@media(max-width:760px){
  .mobile-cta{min-height:64px;align-items:center}
  .mobile-cta .btn,.mobile-cta .hcp-button{position:relative;z-index:1}
  /* The provider may inject a launcher as an iframe or as a positioned container. */
  body > iframe[src*="chat.housecallpro.com"],
  body > iframe[src*="proChat"],
  body > div[id*="proChat"],
  body > div[class*="proChat"],
  body > div[id*="housecall-chat"],
  body > div[class*="housecall-chat"]{bottom:calc(92px + env(safe-area-inset-bottom))!important}
}

/* v4.7: light-weight, accessible loading hint until official Yelp embed JS is needed. */
.morzh-yelp-carousel:not(.morzh-yelp-widget-loaded) .morzh-yelp-card-frame{min-height:175px}
.morzh-yelp-carousel.morzh-yelp-widget-loading .morzh-yelp-card-frame{background:#fff}
.morzh-yelp-carousel .morzh-yelp-card-frame .yelp-review{display:inline-block;max-width:100%}


/* v4.8: accessible first-party chat starter, loads vendor script on request. */
.morzh-chat-access{position:fixed;right:20px;bottom:22px;z-index:2147482000;display:flex;flex-direction:column;align-items:flex-end;gap:7px;max-width:min(320px,calc(100vw - 32px))}
.morzh-chat-launch{appearance:none;display:flex;gap:9px;align-items:center;justify-content:center;padding:12px 17px;background:#126fbe;color:white;font:inherit;font-size:1rem;font-weight:750;line-height:1.1;cursor:pointer;border:2px solid white;border-radius:999px;box-shadow:0 6px 22px rgba(8,51,85,.25);transition:transform .16s ease,background .16s ease}
.morzh-chat-launch:hover,.morzh-chat-launch:focus-visible{background:#075693;transform:translateY(-2px)}
.morzh-chat-launch:disabled{opacity:.8;cursor:progress}
.morzh-chat-status:empty{display:none}
.morzh-chat-status{font-size:.78rem;line-height:1.35;text-align:right;background:#fff;color:#10263e;border:1px solid #bad5e9;border-radius:11px;padding:7px 10px;max-width:280px;box-shadow:0 6px 18px rgba(8,51,85,.14)}
.morzh-chat-native-ready{display:none}
@media(max-width:760px){.morzh-chat-access{bottom:calc(94px + env(safe-area-inset-bottom));right:14px}.morzh-chat-launch{padding:12px 14px}.morzh-chat-status{max-width:235px}}
@media(prefers-reduced-motion:reduce){.morzh-chat-launch{transition:none}}
