/* Wspólna nawigacja i dopracowanie widoku mobilnego */
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
.theme-toggle{order:3;display:grid;place-items:center;width:46px;height:46px;min-width:46px;margin-left:16px;padding:0;border:1px solid #b9dfe9;border-radius:50%;background:#fff;color:#087ca7;cursor:pointer;box-shadow:0 8px 22px rgba(16,37,46,.08);transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}
.theme-toggle:hover{transform:translateY(-2px);background:#eef9fd;border-color:#139fce}
.theme-toggle:focus-visible{outline:3px solid rgba(19,159,206,.28);outline-offset:3px}
.theme-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle__sun{display:none}
header nav.global-nav{order:2;margin-left:auto}
.global-menu-toggle{display:none;border:0;background:transparent;color:#10252e;cursor:pointer;width:48px;height:48px;border-radius:50%;align-items:center;justify-content:center;flex-direction:column;gap:6px;flex:0 0 auto}
.global-menu-toggle span{display:block;width:24px;height:2px;border-radius:2px;background:currentColor;transition:transform .25s ease,opacity .2s ease}
.global-menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.global-menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
/* Animacja wejścia: słońce -> panele -> przepływ energii -> ciepła woda */
.power-intro{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#fff 0%,#f7fcfe 52%,#e7f7fc 100%);color:#10252e;pointer-events:none;animation:power-intro-exit .5s cubic-bezier(.65,0,.35,1) 2.85s forwards}
.power-intro::before{content:"";position:absolute;inset:-18%;background:radial-gradient(circle at 23% 34%,rgba(245,184,32,.12),transparent 22%),radial-gradient(circle at 76% 58%,rgba(19,159,206,.16),transparent 28%),linear-gradient(rgba(19,159,206,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(19,159,206,.055) 1px,transparent 1px);background-size:auto,auto,44px 44px,44px 44px;animation:power-grid 2.8s ease-out both}
.power-intro__scene{position:absolute;left:50%;top:50%;width:900px;height:420px;transform:translate(-50%,-50%);transform-origin:center}
.power-intro__brand{position:absolute;top:18px;left:50%;z-index:5;transform:translate(-50%,-12px);text-align:center;text-transform:uppercase;letter-spacing:.28em;font-size:18px;font-weight:900;color:#10252e;opacity:0;animation:power-brand .45s ease .18s forwards}
.power-intro__brand small{display:block;margin-top:8px;color:#087ca7;font-size:9px;letter-spacing:.18em;font-weight:800;white-space:nowrap}
.power-intro__sun{position:absolute;left:142px;top:82px;width:76px;height:76px;border-radius:50%;z-index:3;background:linear-gradient(145deg,#ffd34e,#f2aa1f);box-shadow:0 0 0 13px rgba(255,211,78,.14),0 12px 28px rgba(240,162,32,.25);opacity:0;transform:scale(.35);animation:power-sun-in .48s cubic-bezier(.18,.85,.25,1.25) .3s forwards,power-sun-pulse 1.2s ease-in-out 1s infinite}
.power-intro__sun span{position:absolute;left:37px;top:37px;width:2px;height:20px;border-radius:3px;background:#f2aa1f;transform-origin:1px 1px;transform:rotate(var(--ray)) translateY(-57px);opacity:.8}
.power-intro__panel{position:absolute;left:78px;bottom:64px;z-index:3;width:270px;height:150px;padding:8px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:6px;border:7px solid #fff;border-radius:8px;background:#0b6f98;box-shadow:0 24px 45px rgba(16,37,46,.2);opacity:0;transform:perspective(600px) rotateX(64deg) rotateZ(-6deg) translateY(65px);animation:power-panel-in .65s cubic-bezier(.18,.85,.25,1.05) .45s forwards}
.power-intro__panel span{position:relative;border:1px solid rgba(174,235,252,.8);background:linear-gradient(145deg,#20b5dc,#087ca7);overflow:hidden}
.power-intro__panel span::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0 35%,rgba(255,255,255,.5) 47%,transparent 59%);transform:translateX(-150%);animation:power-panel-shine .7s ease 1.05s forwards}
.power-intro__panel-leg{position:absolute;left:190px;bottom:42px;width:50px;height:32px;border-left:6px solid #60747c;border-right:6px solid #60747c;opacity:0;animation:power-fade .35s ease .85s forwards}
.power-intro__cable{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible}
.power-intro__route{fill:none;stroke:#c6e3eb;stroke-width:9;stroke-linecap:round;stroke-dasharray:660;stroke-dashoffset:660;animation:power-route .8s ease .85s forwards}
.power-intro__route-live{fill:none;stroke:#139fce;stroke-width:4;stroke-linecap:round;stroke-dasharray:13 15;filter:drop-shadow(0 0 5px rgba(19,159,206,.65));opacity:0;animation:power-live .45s ease 1.25s forwards,power-current .55s linear 1.25s infinite}
.power-intro__spark{fill:#fff;stroke:#139fce;stroke-width:4;filter:drop-shadow(0 0 7px #55d0fa);opacity:0;animation:power-spark-on .2s ease 1.25s forwards}
.power-intro__spark:nth-of-type(2){animation-delay:1.65s}
.power-intro__tank{position:absolute;right:110px;bottom:54px;z-index:3;width:138px;height:232px;border:7px solid #fff;border-radius:68px 68px 24px 24px;background:#eaf4f7;box-shadow:0 24px 45px rgba(16,37,46,.18);overflow:hidden;opacity:0;transform:translateY(55px);animation:power-tank-in .55s cubic-bezier(.18,.85,.25,1.1) .75s forwards}
.power-intro__water{position:absolute;left:0;right:0;bottom:0;height:0;background:linear-gradient(180deg,#6ed8f3,#139fce);animation:power-water-rise .9s cubic-bezier(.4,0,.2,1) 1.45s forwards}
.power-intro__water::before{content:"";position:absolute;left:-12%;top:-8px;width:124%;height:18px;border-radius:50%;background:#87e1f6;animation:power-water-wave .7s ease-in-out infinite alternate}
.power-intro__tank-label{position:absolute;left:0;right:0;top:50px;z-index:2;text-align:center;color:#10252e;font-size:12px;font-weight:900;letter-spacing:.16em}
.power-intro__temperature{position:absolute;left:0;right:0;top:78px;z-index:2;text-align:center;color:#087ca7;font-size:31px;font-weight:900;opacity:0;transform:scale(.7);animation:power-temp .42s cubic-bezier(.2,.9,.25,1.25) 2.02s forwards}
.power-intro__heat{position:absolute;right:146px;bottom:278px;z-index:4;display:flex;gap:9px;opacity:0;animation:power-fade .25s ease 2.05s forwards}
.power-intro__heat span{display:block;width:7px;height:36px;border-radius:50%;border-left:3px solid #139fce;transform:skewX(-12deg);animation:power-steam .75s ease-in-out infinite}
.power-intro__heat span:nth-child(2){animation-delay:.18s}
.power-intro__heat span:nth-child(3){animation-delay:.36s}
.power-intro__caption{position:absolute;left:0;right:0;bottom:5px;text-align:center;color:#60747c;font-size:13px;font-weight:800;letter-spacing:.06em;opacity:0;transform:translateY(8px);animation:power-caption .38s ease 2.18s forwards}
.power-intro__caption strong{color:#087ca7}
@keyframes power-sun-in{to{opacity:1;transform:scale(1)}}
@keyframes power-sun-pulse{50%{box-shadow:0 0 0 22px rgba(255,211,78,.08),0 12px 30px rgba(240,162,32,.3)}}
@keyframes power-panel-in{to{opacity:1;transform:perspective(600px) rotateX(48deg) rotateZ(-6deg) translateY(0)}}
@keyframes power-panel-shine{to{transform:translateX(150%)}}
@keyframes power-route{to{stroke-dashoffset:0}}
@keyframes power-live{to{opacity:1}}
@keyframes power-current{to{stroke-dashoffset:-28}}
@keyframes power-spark-on{to{opacity:1}}
@keyframes power-tank-in{to{opacity:1;transform:none}}
@keyframes power-water-rise{to{height:65%}}
@keyframes power-water-wave{to{transform:translateX(9px) scaleY(.72)}}
@keyframes power-temp{to{opacity:1;transform:scale(1)}}
@keyframes power-steam{50%{transform:translateY(-8px) skewX(10deg);opacity:.35}}
@keyframes power-fade{to{opacity:1}}
@keyframes power-brand{to{opacity:1;transform:translate(-50%,0)}}
@keyframes power-caption{to{opacity:1;transform:none}}
@keyframes power-grid{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}
@keyframes power-intro-exit{to{opacity:0;visibility:hidden;transform:scale(1.025)}}

/* Pełny tryb ciemny: czarne tło, granatowo-grafitowe powierzchnie i jasny tekst. */
html[data-theme="dark"]{color-scheme:dark;background:#0b0d10}
html[data-theme="dark"] body{background:#0b0d10;color:#f5f7fa}
html[data-theme="dark"] :is(main,.hero,.service,.blog-hero,.gallery-hero,.gallery-intro,.posts,.gallery,.article,.section,.services,.realizations,.numbers,.story,.related,footer){background:#0b0d10!important;border-color:#29313b!important}
html[data-theme="dark"] :is(.about,.faq,.reviews-section,.installation,.final,.cta){background:#10141a!important}
html[data-theme="dark"] :is(.contact,.process,.details-section,.quality){background:#0d1116!important}
html[data-theme="dark"] :is(.header,.site-header,body>header){background:rgba(11,13,16,.97)!important;border-color:#29313b!important;box-shadow:0 1px 0 rgba(255,255,255,.02)}
html[data-theme="dark"] :is(.header,.site-header,body>header) nav a:not(.phone):not(.nav-cta){color:#f5f7fa}
html[data-theme="dark"] :is(.brand img,body>header img,footer img){filter:invert(1) hue-rotate(180deg)}
html[data-theme="dark"] .theme-toggle{background:#171c23;border-color:#34404d;color:#ffd34e;box-shadow:0 8px 24px rgba(0,0,0,.34)}
html[data-theme="dark"] .theme-toggle:hover{background:#202731;border-color:#4b5b6c}
html[data-theme="dark"] .theme-toggle__moon{display:none}
html[data-theme="dark"] .theme-toggle__sun{display:block}
html[data-theme="dark"] .global-menu-toggle{color:#f5f7fa}
html[data-theme="dark"] :is(.service-card,.benefit,.faq-item,.faq details,.post-card,.work,.review-card,.article-cta,.flow-step,.number,.icon,.hours-box,.check-item,.area-box,.local-services,.related article,.gallery-local-links a,.local-service-links a){background:#161b22!important;border-color:#2d3742!important;box-shadow:none}
html[data-theme="dark"] :is(.service-card.featured,.number:nth-child(2),.post-image,.hero-visual,.hero-showcase,.hero-photo,.photo,.portrait,.about-photo,.installation-photo){background:#1b222b!important;border-color:#313c48!important}
html[data-theme="dark"] :is(.work img,.work.wide img){background:#10151b!important}
html[data-theme="dark"] :is(.system-flow,.steps){background:#2b3540!important;border-color:#2b3540!important}
html[data-theme="dark"] :is(h1,h2,h3,h4,.review-name strong,.meta strong,.article-body h2,.article-body h3,.article-body strong,.hero-visual strong,.work strong,.faq-item summary,.faq summary,.story-copy strong,.flow-step strong,.number strong){color:#f5f7fa!important}
html[data-theme="dark"] :is(.lead,.intro,.service-card span,.benefit p,.about-copy>p:not(.eyebrow),.faq-heading>p:last-child,.faq-item p,.faq details p,.faq-cta,.review-text,.review-name small,.review-google,.google-score small,.post-content>p,.meta,.article-body,.gallery-hero p:last-child,.gallery-intro>p,.work span,.cta p,.final p,.story-copy p,.number span,.flow-step p,.check-item p,.area-box p,.related p,.installation-head p:last-child,.installation-note,.breadcrumbs,footer,main>p,main li){color:#aeb9c5!important}
html[data-theme="dark"] :is(.secondary,.contact-links a,.contact-links>div,.article .meta,.list div){border-color:#34404c!important}
html[data-theme="dark"] .quick-nav{background:rgba(11,13,16,.96)!important;border-color:#29313b!important}
html[data-theme="dark"] .quick-nav a{background:#151a21;border-color:#34404c;color:#f5f7fa}
html[data-theme="dark"] :is(.realization-card span,.hero-showcase::after,.installation-photo figcaption){background:rgba(18,23,29,.94)!important;color:#f5f7fa!important;border:1px solid rgba(255,255,255,.08)}
html[data-theme="dark"] .reviews-controls button{background:#171c23;color:#72d9fb;border-color:#34404d}
html[data-theme="dark"] .reviews-controls button:hover{background:#139fce;color:#fff}
html[data-theme="dark"] :is(input,select,textarea){background:#10151b!important;border-color:#34404c!important;color:#f5f7fa!important}
html[data-theme="dark"] select option{background:#161b22!important;color:#f5f7fa!important}
html[data-theme="dark"] .power-intro{background:linear-gradient(145deg,#090b0e 0%,#10151b 52%,#0c1b22 100%);color:#f5f7fa}
html[data-theme="dark"] .power-intro__brand{color:#f5f7fa}
html[data-theme="dark"] .power-intro__tank-label{color:#10252e}
html[data-theme="dark"] .power-intro::before{background:radial-gradient(circle at 23% 34%,rgba(245,184,32,.14),transparent 22%),radial-gradient(circle at 76% 58%,rgba(19,159,206,.18),transparent 28%),linear-gradient(rgba(114,217,251,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(114,217,251,.045) 1px,transparent 1px);background-size:auto,auto,44px 44px,44px 44px}
.reviews-track{touch-action:pan-y}

@media(min-width:1241px){
  header nav.global-nav{gap:clamp(14px,1.45vw,28px)!important;font-size:clamp(12px,1vw,14px)!important;white-space:nowrap}
}

@media(min-width:1800px){
  main>.hero:not(#start){padding-left:max(7vw,calc((100vw - 1680px)/2))!important;padding-right:max(7vw,calc((100vw - 1680px)/2))!important}
  :is(.section,.service,.process,.cta,.blog-hero,.posts,.gallery,.gallery-hero,.quick-nav,.story,.numbers,.final){padding-left:max(7vw,calc((100vw - 1680px)/2))!important;padding-right:max(7vw,calc((100vw - 1680px)/2))!important}
  .reviews-heading{padding-left:max(7vw,calc((100vw - 1680px)/2))!important;padding-right:max(7vw,calc((100vw - 1680px)/2))!important}
  .quality{margin-left:max(7vw,calc((100vw - 1680px)/2))!important;margin-right:max(7vw,calc((100vw - 1680px)/2))!important}
  footer{padding-left:max(5vw,calc((100vw - 1680px)/2))!important;padding-right:max(5vw,calc((100vw - 1680px)/2))!important}
}

@media(min-width:761px) and (max-width:1240px){
  .section,.process,.cta,.about,.contact,.story,.quality,.details-section{padding-left:clamp(30px,5vw,64px)!important;padding-right:clamp(30px,5vw,64px)!important}
  .hero,.service{padding-left:clamp(30px,5vw,64px)!important;padding-right:clamp(30px,5vw,64px)!important}
  .service-grid,.benefit-grid,.steps,.installation-gallery,.realizations-grid{min-width:0}
  .service-grid>*,.benefit-grid>*,.steps>*,.installation-gallery>*,.realizations-grid>*{min-width:0}
}

@media(max-width:920px){
  .power-intro__scene{transform:translate(-50%,-50%) scale(.72)}
}

@media(max-width:850px){
  .reviews-section{padding:76px 0!important}
  .reviews-heading{padding:0 24px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:22px!important;margin-bottom:38px!important}
  .google-score{text-align:left!important}
  .reviews-window{width:100%!important;overflow:hidden!important}
  .review-card{flex:0 0 calc(100vw - 44px)!important;width:calc(100vw - 44px)!important;max-width:560px!important;min-height:0!important}
}

@media(max-width:700px){
  .power-intro{height:100svh;min-height:100svh;bottom:auto}
  .power-intro__scene{width:calc(100vw - 28px);max-width:360px;height:500px;transform:translate(-50%,-50%)}
  .power-intro__scene::before{content:"";position:absolute;left:53%;top:300px;width:23%;height:4px;border-radius:5px;background:repeating-linear-gradient(90deg,#139fce 0 10px,transparent 10px 17px);filter:drop-shadow(0 0 5px rgba(19,159,206,.75));opacity:0;animation:power-live .3s ease 1.2s forwards,power-mobile-flow .55s linear 1.2s infinite}
  .power-intro__scene::after{content:"";position:absolute;left:53%;top:295px;width:10px;height:10px;border:3px solid #139fce;border-radius:50%;background:#fff;box-shadow:0 0 10px #55d0fa;opacity:0;animation:power-mobile-dot 1s ease-in-out 1.25s infinite}
  .power-intro__brand{top:14px;width:100%;font-size:17px;letter-spacing:.23em}
  .power-intro__brand small{font-size:8px;letter-spacing:.14em}
  .power-intro__sun{left:calc(50% - 36px);top:94px;width:72px;height:72px}
  .power-intro__sun span{left:35px;top:35px;height:18px;transform:rotate(var(--ray)) translateY(-53px)}
  .power-intro__panel{left:0;bottom:158px;width:55%;height:112px;padding:5px;gap:4px;border-width:5px}
  .power-intro__panel-leg{left:calc(27.5% - 24px);bottom:132px;width:48px;height:30px;border-width:0 5px}
  .power-intro__cable{display:none}
  .power-intro__tank{right:0;bottom:130px;width:26%;height:154px;border-width:5px;border-radius:44px 44px 18px 18px}
  .power-intro__tank-label{top:35px;font-size:10px}
  .power-intro__temperature{top:57px;font-size:23px}
  .power-intro__heat{right:5%;bottom:278px;gap:6px}
  .power-intro__heat span{height:28px}
  .power-intro__caption{bottom:70px;font-size:12px;line-height:1.5;padding:0 10px}
}

@keyframes power-mobile-flow{to{background-position:27px 0}}
@keyframes power-mobile-dot{0%{opacity:0;transform:translateX(0) scale(.75)}15%,75%{opacity:1}100%{opacity:0;transform:translateX(72px) scale(1)}}

@media(max-width:1240px){
  body.menu-open{overflow:hidden}
  body.menu-open .mobile-call{opacity:0;pointer-events:none}
  .header,.site-header{height:82px!important;min-height:82px!important;padding:0 18px!important;position:sticky!important;top:0!important;z-index:80!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(14px);border-top:0!important;border-bottom:1px solid #dcebef!important}
  .header .brand,.site-header .brand{width:142px!important;height:78px!important;display:block;overflow:hidden;flex:0 0 auto}
  .header .brand img,.site-header .brand img{width:150px!important;height:150px!important;object-fit:cover!important;transform:translateY(-36px)!important;object-position:center!important}
  .theme-toggle{z-index:82;width:44px;height:44px;min-width:44px;margin-left:auto}
  .global-menu-toggle,.menu-button{order:4;display:flex!important;position:relative!important;z-index:82!important;margin-left:6px!important;padding:0!important}
  header nav.global-nav{display:flex!important;position:fixed!important;top:82px!important;left:12px!important;right:12px!important;bottom:auto!important;max-height:calc(100dvh - 98px)!important;overflow-y:auto!important;padding:16px 22px 22px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;border:1px solid #dcebef!important;border-radius:0 0 16px 16px!important;background:rgba(255,255,255,.985)!important;box-shadow:0 24px 60px rgba(16,37,46,.18)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-14px)!important;transition:opacity .22s ease,transform .22s ease,visibility .22s!important;z-index:81!important}
  header nav.global-nav.open,header nav.global-nav.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  header nav.global-nav a{display:flex!important;align-items:center!important;width:100%!important;min-height:52px!important;padding:13px 2px!important;border-bottom:1px solid #e6f0f3!important;color:#10252e!important;font-size:15px!important;font-weight:750!important;line-height:1.25!important}
  header nav.global-nav .phone,header nav.global-nav .nav-cta{justify-content:center!important;margin-top:14px!important;padding:15px 18px!important;border:0!important;border-radius:8px!important;background:#139fce!important;color:#fff!important;box-shadow:0 10px 24px rgba(19,159,206,.2)!important}
  html[data-theme="dark"] header nav.global-nav{background:rgba(16,20,26,.99)!important;border-color:#2d3742!important;box-shadow:0 24px 60px rgba(0,0,0,.42)!important}
  html[data-theme="dark"] header nav.global-nav a{color:#f6f8f9!important;border-color:#414b50!important}
}

@media(max-width:760px){
  body{font-size:16px}
  .hero,.service{grid-template-columns:1fr!important;gap:38px!important;padding:56px 20px 64px!important;min-height:auto!important}
  .hero-content{max-width:none!important}
  .hero h1,.blog-hero h1,.gallery-hero h1,.article h1{font-size:clamp(38px,11.5vw,54px)!important;line-height:1.02!important;overflow-wrap:anywhere}
  .hero h1 br,.section h2 br,.cta h2 br{display:none}
  .hero .lead,.hero .intro,.blog-hero>p:last-child,.gallery-hero p:last-child{font-size:16px!important;line-height:1.7!important}
  .hero-actions,.actions{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:28px!important}
  .hero-actions .button,.actions .button,.cta .button{width:100%!important;text-align:center!important;padding:16px 18px!important}
  .hero-showcase,.hero-photo,.portrait,.photo{height:310px!important;min-height:0!important;margin:0!important;border-radius:18px!important;order:0!important}
  .hero-showcase::after{left:12px!important;right:12px!important;bottom:12px!important;padding:13px 14px!important;font-size:11px!important;line-height:1.45!important}
  .section,.process,.cta{padding:72px 20px!important}
  .section h2,.process h2,.cta h2,.story h2,.quality h2{font-size:clamp(34px,10vw,48px)!important;line-height:1.05!important}
  .section-heading,.reviews-heading,.realizations-head,.process-head,.installation-head{display:block!important;margin-bottom:32px!important}
  .service-grid,.benefit-grid,.steps,.numbers,.system-flow,.installation-gallery,.realizations-grid{grid-template-columns:1fr!important;gap:14px!important}
  .service-card{min-height:390px!important;border-radius:12px!important}
  .service-card .service-photo{height:205px!important}
  .service-card p{top:220px!important}
  .service-card h3{font-size:22px!important;margin-top:27px!important}
  .benefit,.step,.number,.flow-step{min-height:0!important;padding:27px 24px!important}
  .step h3{margin-top:28px!important}
  .about,.contact,.story,.quality,.details-section{grid-template-columns:1fr!important;gap:42px!important;padding:72px 20px!important;margin-left:0!important;margin-right:0!important;border-radius:0!important}
  .about-number{width:230px!important;height:230px!important;margin:auto!important}
  .contact-form{grid-template-columns:1fr!important}
  .contact-form label,.contact-form button{grid-column:1!important}
  .contact-links strong{font-size:14px!important;overflow-wrap:anywhere}
  .reviews-section{padding:72px 0!important}
  .reviews-heading{padding:0 20px!important}
  .review-card{flex-basis:86vw!important;padding:24px!important}
  .reviews-section{padding:68px 0!important}
  .reviews-heading{padding:0 18px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:22px!important;margin-bottom:34px!important}
  .reviews-heading h2{font-size:clamp(32px,9vw,42px)!important;line-height:1.08!important}
  .google-score{text-align:left!important}
  .reviews-window{width:100%!important;overflow:hidden!important}
  .reviews-track{gap:18px!important}
  .review-card{flex:0 0 calc(100vw - 36px)!important;width:calc(100vw - 36px)!important;max-width:480px!important;min-height:0!important;padding:22px!important;border-radius:12px!important}
  .review-top{min-width:0!important}
  .review-name{min-width:0!important}
  .review-name strong{overflow-wrap:anywhere}
  .stars{margin:18px 0 14px!important}
  .review-text{min-width:0!important;font-size:14px!important;line-height:1.65!important;overflow-wrap:anywhere!important;word-break:normal!important}
  .review-google{padding-top:17px!important}
  .reviews-controls{margin-top:26px!important}
  .quick-nav{top:82px!important;padding:14px 20px!important;gap:9px!important;overflow-x:auto!important;scrollbar-width:none}
  .quick-nav::-webkit-scrollbar{display:none}
  .quick-nav a{white-space:nowrap!important;min-height:42px!important;display:flex!important;align-items:center!important}
  .blog-hero,.gallery-hero{padding:56px 20px 48px!important}
  .posts,.gallery{padding:42px 20px 78px!important;grid-template-columns:1fr!important}
  .post-card{grid-template-columns:1fr!important;border-radius:12px!important;overflow:hidden!important}
  .post-image{height:230px!important;min-height:0!important}
  .post-content{padding:25px 22px!important}
  .post-content h2{font-size:28px!important}
  .article{padding:52px 20px 86px!important}
  .article-body{font-size:16px!important;line-height:1.8!important}
  .article-body h2{font-size:28px!important;line-height:1.15!important}
  .article-cta{padding:27px 22px!important;margin-left:0!important;margin-right:0!important}
  .gallery{gap:16px!important}
  .work img,.work.wide img{height:300px!important;object-fit:cover!important}
  .work figcaption{padding:20px!important}
  footer{padding:30px 20px 90px!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important;text-align:center!important}
  footer img{margin:auto!important}
  .mobile-call{left:10px!important;right:10px!important;bottom:10px!important;min-height:52px!important;display:flex!important;align-items:center!important;justify-content:center!important}
}

@media(max-width:420px){
  .header,.site-header{padding:0 12px!important}
  .header .brand,.site-header .brand{width:128px!important}
  .header .brand img,.site-header .brand img{width:138px!important;height:138px!important;transform:translateY(-31px)!important}
  header nav.global-nav{left:8px!important;right:8px!important;padding-left:18px!important;padding-right:18px!important}
  .hero,.section,.process,.cta,.about,.contact,.story,.quality{padding-left:17px!important;padding-right:17px!important}
  .theme-toggle{width:42px;height:42px;min-width:42px}
  .theme-toggle svg{width:20px;height:20px}
  .review-card{flex-basis:calc(100vw - 28px)!important;width:calc(100vw - 28px)!important;padding:20px!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .power-intro{display:grid!important;animation:power-intro-exit .35s ease 1s forwards!important}
}
