:root{--blue:#0874d1;--blue-dark:#0b1f46;--green:#62b516;--green-dark:#4f9810;--text:#17233f;--muted:#667085;--line:#dce7f2;--bg:#f6faff;--white:#fff;--radius:20px;--shadow:0 14px 40px rgba(14,48,88,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:#fff;font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1450px,calc(100% - 48px));margin-inline:auto}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;background:#fff;padding:12px 18px;border-radius:8px}.skip-link:focus{top:16px}.topbar{background:#f0f6fc;font-size:14px}.topbar__inner{min-height:46px;display:flex;align-items:center;gap:28px}.topbar__item{white-space:nowrap}.topbar__wide{flex:1}.topbar__links{display:flex;align-items:center;gap:22px}.topbar__phone{font-weight:800;color:#083d8f}.nav-row{background:#fff;border-bottom:1px solid #edf1f5;position:relative;z-index:50}.nav-row__inner{display:flex;align-items:center;min-height:118px;gap:40px}.brand{display:flex;align-items:center;gap:14px;flex:none}.brand img{width:74px;height:74px;object-fit:contain}.brand__text{display:grid;line-height:1}.brand__text strong{font-size:26px;color:#0874d1}.brand__text b{font-size:26px;color:#62b516;margin-top:4px}.brand__text small{font-size:12px;color:#7b8495;margin-top:8px}.primary-nav{margin-left:auto}.menu{display:flex;gap:36px;list-style:none;padding:0;margin:0}.menu a{font-weight:650}.menu a:hover,.menu a:focus{color:var(--blue)}.header-actions{display:flex;align-items:center;gap:22px}.header-phone{font-weight:800;color:#0750a9;white-space:nowrap}.button{border:0;border-radius:10px;padding:15px 24px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:.2s ease}.button:hover{transform:translateY(-1px)}.button--green{background:linear-gradient(135deg,#6fc51d,#55a70b);color:#fff;box-shadow:0 10px 22px rgba(92,177,20,.18)}.button--green:hover{background:linear-gradient(135deg,#63b816,#4b9910)}.button--full{width:100%;padding:12px 16px}.menu-toggle{display:none;border:0;background:none;width:48px;height:48px;padding:10px}.menu-toggle span:not(.screen-reader-text){display:block;height:2px;background:var(--blue-dark);margin:6px 0}.hero{background:radial-gradient(circle at 5% 50%,#eff7ff 0,transparent 42%),#fff;overflow:hidden}.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.92fr);min-height:840px}.hero__content{padding:52px 0 44px;position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;background:#e7f3ff;color:#0874d1;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:800}.eyebrow:before{content:"✦";color:var(--green);margin-right:9px}.hero h1{font-size:clamp(48px,5.2vw,78px);line-height:1.05;letter-spacing:-.04em;max-width:820px;margin:28px 0 22px}.hero h1 span{display:block;color:var(--blue)}.hero__lead{font-size:20px;max-width:690px;margin:0 0 26px}.benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 40px;max-width:730px;margin:26px 0 30px}.benefit{display:flex;gap:14px;align-items:center}.benefit__icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#eff8df;color:var(--green);font-weight:900}.benefit strong,.benefit small{display:block}.benefit small{color:var(--muted);font-size:14px;margin-top:4px}.quick-calculator{max-width:760px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:24px}.quick-calculator h2{font-size:24px;margin:0 0 18px}.quick-calculator__fields{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.quick-calculator label{font-size:12px;color:var(--muted)}.quick-calculator select{width:100%;margin-top:6px;border:1px solid #d7e2ee;border-radius:10px;padding:14px;background:#fff;color:var(--text);font-weight:700}.quick-calculator__result{display:flex;justify-content:space-between;align-items:end;margin-top:22px;gap:20px}.quick-calculator__result small,.quick-calculator__result strong{display:block}.quick-calculator__result small{color:var(--muted)}.quick-calculator__result strong{font-size:28px;color:var(--blue);margin-top:3px}.calculator-note{font-size:14px;color:var(--muted);margin:20px 0 0 2px}.hero__visual{position:relative;align-self:stretch}.hero__visual:after{content:"";position:absolute;inset:auto -14% -14% 38%;height:38%;background:radial-gradient(circle,#8bd31c 0,#67bb16 55%,transparent 56%);opacity:.92;border-radius:50%}.hero__visual picture,.hero__visual img{height:100%;width:100%;object-fit:cover;object-position:45% center}.section{padding:92px 0}.services-section{background:linear-gradient(180deg,#fff,#f8fbff)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-heading h2,.process-section h2{font-size:clamp(34px,4vw,56px);line-height:1.1;letter-spacing:-.03em;margin:16px 0 10px}.section-heading p{font-size:18px;color:var(--muted);margin:0}.text-link{color:var(--blue);font-weight:800;white-space:nowrap}.service-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.service-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e0e8f1;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(14,48,88,.06)}.service-card>img{aspect-ratio:1.55/1;object-fit:cover}.service-card__body{padding:18px;display:flex;flex:1;flex-direction:column}.service-card h3{font-size:20px;line-height:1.25;margin:0 0 12px}.service-card p{font-size:14px;color:#374151;margin:0 0 18px;flex:1}.service-card strong{font-size:22px;color:var(--blue);margin:0 0 16px}.trust-strip{margin-top:32px;border:1px solid #dce7f2;border-radius:18px;background:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:26px}.trust-strip>div{padding:0 26px;border-right:1px solid #e5edf5}.trust-strip>div:last-child{border-right:0}.trust-strip b,.trust-strip span{display:block}.trust-strip span{font-size:14px;color:var(--muted);margin-top:6px}.process-section{padding-top:72px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:34px}.process-grid article{position:relative;padding:28px;border-radius:16px;background:#f8fbff;border:1px solid #e2ebf5}.process-grid article>span{position:absolute;top:-14px;left:22px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--green);font-weight:800}.process-grid h3{margin:8px 0 10px}.process-grid p{margin:0;color:var(--muted)}.cta-band{padding:30px 0 70px}.cta-band__inner{display:flex;align-items:center;gap:30px;background:linear-gradient(110deg,#eef7ff,#f8fff0);border:1px solid #d9e7f4;border-radius:18px;padding:30px 36px}.cta-band__inner>div{margin-right:auto}.cta-band h2{margin:0 0 6px}.cta-band p{margin:0;color:var(--muted)}.cta-band__phone{color:var(--blue);font-weight:850;font-size:20px}.site-footer{background:#0d2144;color:#fff;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px}.brand--footer .brand__text strong,.brand--footer .brand__text b{font-size:22px}.site-footer h2{font-size:18px}.site-footer p,.site-footer li{color:#c9d4e3}.site-footer ul{padding:0;list-style:none}.site-footer li{margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid rgba(255,255,255,.14);padding-top:20px;margin-top:38px;font-size:13px;color:#b7c5d6}.content-page{padding:70px 0;min-height:55vh}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.modal__backdrop{position:absolute;inset:0;background:rgba(6,22,49,.66);backdrop-filter:blur(4px)}.modal__dialog{position:relative;z-index:1;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:20px;padding:30px;box-shadow:0 30px 100px rgba(0,0,0,.28)}.modal__close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:32px;cursor:pointer}.modal h2{margin:0 44px 8px 0}.modal p{color:var(--muted)}.request-form{display:grid;gap:16px}.request-form label{display:grid;gap:7px;font-weight:700}.request-form input,.request-form textarea{border:1px solid #cfdce9;border-radius:10px;padding:13px 14px}.request-form .consent{grid-template-columns:auto 1fr;align-items:start;font-size:14px;font-weight:400}.request-form .consent input{margin-top:4px}.form-status{min-height:24px;font-size:14px}.form-status.is-error{color:#b42318}.form-status.is-success{color:#27820d}.mobile-actions{display:none}
@media(max-width:1250px){.container{width:min(100% - 32px,1120px)}.topbar__wide{display:none}.nav-row__inner{gap:22px}.primary-nav{display:none}.menu-toggle{display:block;margin-left:auto}.primary-nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #edf1f5;padding:20px 16px;box-shadow:0 18px 30px rgba(14,48,88,.12)}.primary-nav.is-open .menu{display:grid;gap:0}.primary-nav.is-open .menu a{display:block;padding:14px;border-bottom:1px solid #edf1f5}.header-actions .header-phone{display:none}.hero__grid{grid-template-columns:1fr 48%;min-height:760px}.service-grid{grid-template-columns:repeat(3,1fr)}.trust-strip{grid-template-columns:repeat(2,1fr);gap:24px}.trust-strip>div{border-right:0}.process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.container{width:calc(100% - 24px)}.topbar__inner{min-height:40px;justify-content:space-between;gap:12px}.topbar__item:nth-child(2){display:none}.topbar__links a:not(.topbar__phone){display:none}.nav-row__inner{min-height:82px}.brand img{width:52px;height:52px}.brand__text strong,.brand__text b{font-size:18px}.brand__text small{display:none}.header-actions{display:none}.hero__grid{display:block;min-height:auto}.hero__content{padding:34px 0 26px}.hero h1{font-size:42px;max-width:100%;margin-top:22px}.hero__lead{font-size:17px}.benefit-grid{grid-template-columns:1fr;gap:14px}.quick-calculator{padding:20px}.quick-calculator__fields{grid-template-columns:1fr}.quick-calculator__result{display:grid;align-items:stretch}.quick-calculator__result .button{width:100%}.hero__visual{height:510px;margin-inline:-12px}.hero__visual img{object-position:52% center}.section{padding:64px 0}.section-heading{align-items:start;display:block}.section-heading .text-link{display:inline-block;margin-top:16px}.service-grid{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:10px}.service-card{min-width:82vw;scroll-snap-align:start}.trust-strip{grid-template-columns:1fr;padding:20px}.trust-strip>div{padding:12px 0;border-bottom:1px solid #e5edf5}.trust-strip>div:last-child{border-bottom:0}.process-grid{grid-template-columns:1fr}.cta-band__inner{display:grid;padding:26px}.cta-band__phone{font-size:18px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{display:grid}.modal__dialog{padding:24px}.mobile-actions{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;z-index:90;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #dde6ef;padding:10px 12px env(safe-area-inset-bottom);box-shadow:0 -10px 30px rgba(14,48,88,.12)}.mobile-actions a,.mobile-actions button{border:0;background:none;text-align:center;font-weight:800;color:var(--blue-dark)}body{padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Release 0.2 — calculators and service catalogue */
.quick-calculator--reference{padding:0;border:0;box-shadow:none;background:transparent;max-width:760px}
.quick-area{display:grid;grid-template-columns:repeat(7,1fr);border:2px solid #25b77b;border-radius:999px;overflow:hidden;background:#fff}
.quick-area button{min-height:44px;padding:7px 4px;border:0;border-right:1px solid #d8eee5;background:#fff;color:#527063;font-size:13px;font-weight:800;cursor:pointer}
.quick-area button:last-child{border-right:0}.quick-area button small{font-size:10px;margin-left:2px}.quick-area button.is-active{background:#21bd73;color:#fff}
.quick-calculator__selects{display:grid;gap:9px;margin-top:9px}.quick-calculator__selects select{width:100%;height:46px;padding:0 16px;border:1.5px solid #26bd79;border-radius:999px;background:#fff;color:#15985e;font-weight:800}
.quick-calculator__action{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;margin-top:9px}.quick-calculator__action .button{min-height:46px;border-radius:999px;padding:10px 20px}.quick-price-pill{display:flex;align-items:center;justify-content:center;border-radius:999px;background:#f29a72;color:#fff;font-weight:900;font-size:14px;padding:8px 12px;text-align:center}.quick-calculator__note{display:block;color:#7a8796;margin:8px 10px 0;font-size:11px}
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.service-card>img{aspect-ratio:16/10}.service-card__body{min-height:280px}.service-card h3{font-size:21px}.service-card p{font-size:15px}
.expanded-calculator-section{padding:90px 0;background:#fff;overflow:hidden}.expanded-calculator__layout{width:min(1600px,100%);margin-inline:auto;display:grid;grid-template-columns:minmax(420px,42%) minmax(0,58%);align-items:center;gap:54px}.expanded-calculator__visual{min-height:810px;align-self:stretch;overflow:hidden;border-radius:0 300px 300px 0;border:5px solid #25bd82;border-left:0;background:#eaf8ff}.expanded-calculator__visual img{width:100%;height:100%;object-fit:cover;object-position:center}.expanded-calculator__content{padding:30px max(24px,calc((100vw - 1450px)/2)) 30px 0}.expanded-calculator__content h2{font-size:clamp(38px,4vw,58px);line-height:1.08;letter-spacing:-.03em;margin:18px 0 10px}.expanded-calculator__intro{max-width:760px;color:var(--muted);font-size:17px;margin:0 0 24px}.expanded-calculator__top{display:grid;grid-template-columns:1.2fr .7fr 1fr 1fr;gap:12px;align-items:end}.segment-control{display:grid;grid-template-columns:repeat(4,1fr);padding:0;border:1.5px solid #2abd83;border-radius:999px;overflow:hidden;min-width:240px}.segment-control legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.segment-control button{height:44px;border:0;border-right:1px solid #d7ece4;background:#fff;color:#51675f;font-weight:850;cursor:pointer}.segment-control button:last-child{border-right:0}.segment-control button.is-active{background:#22bc76;color:#fff}.compact-field{display:grid;gap:6px;color:#6e7c8e;font-size:12px}.compact-field input,.compact-field select{height:44px;width:100%;border:1.5px solid #2abd83;border-radius:999px;padding:0 15px;background:#fff;color:#153154;font-weight:750}.expanded-calculator__top .check-field{grid-column:1/-1;display:flex;align-items:center;gap:9px;font-size:14px;color:#334155;margin-top:2px}.check-field input{width:18px;height:18px;accent-color:#20b86e}.extras-panel{margin-top:18px;border:1.5px solid #29bf82;border-radius:16px;padding:14px 16px 10px}.extras-panel__heading{display:flex;justify-content:space-between;gap:20px;padding:2px 4px 10px}.extras-panel__heading span{color:var(--muted);font-size:13px}.extra-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:10px 5px;border-top:1px solid #edf2f5}.extra-row>div:first-child{display:flex;justify-content:space-between;gap:20px;align-items:center}.extra-row strong{font-size:14px}.extra-row small{color:#758393;white-space:nowrap}.extra-row.is-collapsed{display:none}.extra-row.is-collapsed.is-visible{display:grid}.quantity-control{display:grid;grid-template-columns:30px 28px 30px;align-items:center;gap:5px}.quantity-control button{width:30px;height:30px;border:1px solid #f29a72;border-radius:8px;background:#fff;color:#ec7e50;font-weight:900;cursor:pointer}.quantity-control button:last-child{background:#f29a72;color:#fff}.quantity-control output{text-align:center;font-weight:850}.extras-toggle{width:100%;height:34px;border:1px solid #29bf82;border-radius:999px;background:#fff;color:#416158;cursor:pointer;margin-top:8px}.expanded-order-card{margin-top:18px;padding:22px;border-radius:18px;background:#fff;box-shadow:0 14px 46px rgba(23,58,92,.11);border:1px solid #eef2f6}.expanded-order-card__price{text-align:center;margin-bottom:16px}.expanded-order-card__price small,.expanded-order-card__price strong{display:block}.expanded-order-card__price small{color:var(--muted)}.expanded-order-card__price strong{font-size:34px;color:#263340;margin-top:4px}.expanded-order-card__fields{display:grid;grid-template-columns:1fr 1fr 1fr 1.15fr;gap:10px}.expanded-order-card label{display:grid;gap:5px;font-size:12px;color:#6e7c8e}.expanded-order-card input,.expanded-order-card textarea{width:100%;border:1px solid #d7e1eb;border-radius:999px;padding:11px 14px;background:#fff;color:var(--text)}.expanded-order-card textarea{border-radius:12px;resize:vertical}.upload-field,.comment-field{margin-top:11px}.upload-field input{border-style:dashed;border-radius:12px}.upload-field small{color:#8994a3}.expanded-order-card .consent{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px;margin:12px 0;font-size:12px}.expanded-order-card .consent input{width:16px;height:16px;margin-top:2px;accent-color:#25b874}.expanded-order-card .button{border-radius:999px;min-height:48px}.calculator-page__intro{padding:70px 0 0}.calculator-page__intro h1{font-size:clamp(42px,5vw,68px);line-height:1.08;margin:18px 0}.calculator-page__intro p{font-size:18px;color:var(--muted);max-width:800px}.calculator-page .expanded-calculator-section{padding-top:48px}
@media(max-width:1250px){.service-grid{grid-template-columns:repeat(3,1fr)}.expanded-calculator__layout{grid-template-columns:38% 62%;gap:32px}.expanded-calculator__visual{min-height:900px;border-radius:0 220px 220px 0}.expanded-calculator__content{padding-right:24px}.expanded-calculator__top{grid-template-columns:1fr 1fr}.expanded-calculator__top .segment-control{grid-column:1/-1}.expanded-order-card__fields{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.quick-area{grid-template-columns:repeat(4,1fr);border-radius:16px}.quick-area button{border-bottom:1px solid #d8eee5}.quick-area button:nth-child(4){border-right:0}.quick-area button:last-child{grid-column:3/5}.quick-calculator__action{grid-template-columns:1fr}.quick-price-pill{min-height:46px;grid-row:1}.service-grid{display:grid;grid-template-columns:1fr;overflow:visible}.service-card{min-width:0}.service-card__body{min-height:0}.expanded-calculator-section{padding:64px 0}.expanded-calculator__layout{display:flex;flex-direction:column;width:100%;gap:24px}.expanded-calculator__visual{width:calc(100% - 24px);height:420px;min-height:0;align-self:flex-start;border-radius:0 160px 160px 0;border-width:4px}.expanded-calculator__content{width:100%;padding:0 12px}.expanded-calculator__content h2{font-size:38px}.expanded-calculator__top{grid-template-columns:1fr}.expanded-calculator__top .segment-control,.expanded-calculator__top .check-field{grid-column:auto}.extras-panel__heading{display:grid}.extra-row>div:first-child{display:grid;gap:2px}.extra-row small{white-space:normal}.expanded-order-card__fields{grid-template-columns:1fr}.expanded-order-card__price strong{font-size:28px}.calculator-page__intro{padding-top:45px}}

/* Release 0.3 — long homepage sections */
.section-heading--center{display:block;text-align:center;max-width:920px;margin-left:auto;margin-right:auto}.section-heading--center>div{width:100%}
.service-grid--popular{grid-template-columns:repeat(6,minmax(0,1fr))}.service-grid--popular .service-card__body{min-height:300px}.service-grid--popular .service-card h3{font-size:18px}.service-grid--popular .service-card p{font-size:13px}.service-grid--popular .service-card strong{font-size:20px}
.button--light{background:#fff;color:#d5612e;box-shadow:0 10px 24px rgba(117,50,18,.16)}.button--outline{background:#fff;color:var(--blue);border:1.5px solid #80b9ed;box-shadow:none}.button--outline:hover{background:#edf7ff}
.promo-banner-section{padding:30px 0 50px}.promo-banner{position:relative;overflow:hidden;min-height:230px;border-radius:22px;background:linear-gradient(120deg,#f28b49,#dd642d);color:#fff;display:grid;grid-template-columns:250px minmax(0,1fr) auto;align-items:center;gap:36px;padding:34px 58px;box-shadow:0 20px 46px rgba(188,88,38,.18)}.promo-banner:after{content:"";position:absolute;right:-90px;top:-120px;width:350px;height:350px;border:60px solid rgba(255,255,255,.08);border-radius:50%}.promo-banner__gift{position:relative;width:180px;height:130px;border:18px solid rgba(255,255,255,.34);border-radius:20px;transform:rotate(-8deg)}.promo-banner__gift:before,.promo-banner__gift:after{content:"";position:absolute;background:rgba(255,255,255,.34)}.promo-banner__gift:before{width:24px;inset:-18px auto -18px 60px}.promo-banner__gift:after{height:24px;left:-18px;right:-18px;top:36px}.promo-banner__gift span:before,.promo-banner__gift span:after{content:"";position:absolute;width:70px;height:52px;border:16px solid rgba(255,255,255,.34);border-bottom:0;border-radius:50px 50px 0 0;top:-70px}.promo-banner__gift span:before{left:15px;transform:rotate(-30deg)}.promo-banner__gift span:after{right:5px;transform:rotate(30deg)}.promo-banner__content{position:relative;z-index:1}.promo-banner__content>span{text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.08em;opacity:.85}.promo-banner h2{font-size:clamp(28px,3vw,44px);line-height:1.1;margin:8px 0}.promo-banner p{font-size:17px;max-width:700px;margin:0;opacity:.94}.promo-banner .button{position:relative;z-index:2;white-space:nowrap}
.price-section{background:#fff}.price-tabs{display:flex;justify-content:center;gap:10px;margin:0 0 26px}.price-tabs button{min-width:150px;border:1px solid #c9dcef;border-radius:999px;background:#fff;color:#29415e;padding:12px 22px;font-weight:800;cursor:pointer}.price-tabs button.is-active{background:linear-gradient(135deg,#168fdd,#0874d1);border-color:transparent;color:#fff;box-shadow:0 8px 20px rgba(8,116,209,.18)}.price-panel[hidden]{display:none}.price-table-wrap{overflow:auto;border:1px solid #dbe7f0;border-radius:18px;box-shadow:0 12px 35px rgba(14,48,88,.06)}.price-table{width:100%;border-collapse:collapse;min-width:880px}.price-table thead{background:linear-gradient(90deg,#0e9dca,#22b679);color:#fff}.price-table th,.price-table td{padding:17px 20px;text-align:left;border-bottom:1px solid #e8eff5}.price-table tbody th{font-weight:800}.price-table tbody td{color:#137e67;font-weight:700}.price-table tbody tr:last-child th,.price-table tbody tr:last-child td{border-bottom:0}.price-section__bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px}.price-section__bottom p{margin:0;color:var(--muted)}
.category-section{background:linear-gradient(180deg,#f8fbff,#fff)}.category-bands{display:grid;gap:15px}.category-band{--category-image:none;position:relative;min-height:145px;display:grid;grid-template-columns:80px minmax(0,1fr) 60px;align-items:center;gap:24px;padding:28px 38px;border:2px solid #44bd8b;border-radius:18px;overflow:hidden;background:#fff;color:var(--blue-dark);isolation:isolate;transition:.2s ease}.category-band:before{content:"";position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.86) 48%,rgba(255,255,255,.22) 100%),var(--category-image);background-size:cover;background-position:center}.category-band:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(236,249,244,.45),transparent)}.category-band:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(18,111,83,.11)}.category-band__number{width:58px;height:58px;border-radius:16px;background:#ebf8f2;color:#dc743d;display:grid;place-items:center;font-weight:900;font-size:20px}.category-band strong{font-size:clamp(20px,2vw,30px);line-height:1.2;max-width:850px}.category-band__arrow{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#12a16d;font-size:28px;box-shadow:0 8px 20px rgba(19,82,64,.12)}
.advantages-section{background:#fff}.advantages-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.advantage-card{position:relative;min-height:245px;padding:32px;border:1.5px solid #72cfaa;border-radius:18px;background:#fff;overflow:hidden}.advantage-card:after{content:"";position:absolute;width:130px;height:130px;right:-50px;bottom:-55px;background:#ecf8e7;border-radius:50%}.advantage-card>span{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:15px;background:linear-gradient(135deg,#0a8bd2,#18b67c);color:#fff;font-weight:900}.advantage-card h3{font-size:21px;margin:22px 0 10px}.advantage-card p{margin:0;color:var(--muted)}
.promotions-section{background:#f8fbff}.promotions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.promotion-card{position:relative;min-height:260px;padding:32px;border-radius:20px;overflow:hidden;border:1px solid #d9e7f2;background:#fff;display:flex;flex-direction:column}.promotion-card:before{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-80px;top:-80px;background:rgba(8,116,209,.08)}.promotion-card--2:before{background:rgba(98,181,22,.10)}.promotion-card--3:before{background:rgba(242,139,73,.12)}.promotion-card__index{position:relative;color:#8bbce6;font-size:14px;font-weight:900}.promotion-card h3{position:relative;font-size:25px;line-height:1.2;margin:18px 0 12px}.promotion-card p{position:relative;color:var(--muted);margin:0 0 24px;flex:1}.promotion-card a{position:relative;color:var(--blue);font-weight:850}.legal-note,.portfolio-note{text-align:center;color:#7b8795;font-size:13px;margin:22px auto 0;max-width:1000px}
.portfolio-section{background:#fff}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.portfolio-card{display:grid;grid-template-columns:47% minmax(0,1fr);border:1px solid #cfe6dc;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 12px 34px rgba(14,48,88,.06)}.portfolio-card>img{width:100%;height:100%;min-height:330px;object-fit:cover}.portfolio-card__body{padding:28px;display:flex;flex-direction:column}.portfolio-card__body>span{color:#118b64;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.portfolio-card h3{font-size:24px;line-height:1.25;margin:13px 0}.portfolio-card ul{list-style:none;padding:0;margin:0 0 24px;color:#445165}.portfolio-card li{padding:5px 0;border-bottom:1px dashed #dce6ed}.portfolio-card .button{margin-top:auto}
.page-hero{padding:70px 0 34px;background:linear-gradient(180deg,#f4f9ff,#fff)}.page-hero h1{font-size:clamp(42px,5vw,70px);line-height:1.08;margin:18px 0}.page-hero p{font-size:18px;color:var(--muted);max-width:850px}.page-service-grid{padding-top:35px}.full-price-section{padding-top:40px}
@media(max-width:1250px){.service-grid--popular{grid-template-columns:repeat(3,1fr)}.promo-banner{grid-template-columns:160px 1fr auto;padding:32px}.promo-banner__gift{width:125px;height:95px}.advantages-grid{grid-template-columns:repeat(2,1fr)}.portfolio-card{grid-template-columns:1fr}.portfolio-card>img{height:280px;min-height:0}.promotions-grid{grid-template-columns:1fr 1fr}.promotion-card:last-child{grid-column:1/-1}}
@media(max-width:780px){.service-grid--popular{display:flex;overflow:auto;scroll-snap-type:x mandatory}.service-grid--popular .service-card{min-width:82vw}.promo-banner-section{padding:15px 0 30px}.promo-banner{display:block;min-height:0;padding:30px 24px}.promo-banner__gift{display:none}.promo-banner .button{margin-top:22px;width:100%}.price-tabs{justify-content:flex-start;overflow:auto;padding-bottom:4px}.price-tabs button{min-width:125px}.price-section__bottom{display:grid}.price-section__bottom .button{width:100%}.category-band{min-height:120px;grid-template-columns:52px 1fr 40px;padding:20px 18px;gap:13px}.category-band:before{background-image:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.85)),var(--category-image)}.category-band__number{width:46px;height:46px;border-radius:12px}.category-band__arrow{width:36px;height:36px}.advantages-grid,.promotions-grid,.portfolio-grid{grid-template-columns:1fr}.promotion-card:last-child{grid-column:auto}.portfolio-card{display:block}.portfolio-card>img{height:230px}.portfolio-card__body{padding:22px}}
.footer-grid--wide{grid-template-columns:1.45fr 1fr 1fr 1.15fr;gap:48px}.footer-about p{max-width:420px}.footer-socials{display:flex;gap:10px;margin-top:18px}.footer-socials a{border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:8px 14px;color:#fff}.site-footer a:hover{color:#8ed64c}
@media(max-width:1000px){.footer-grid--wide{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.footer-grid--wide{grid-template-columns:1fr}}

/* Release 0.3.1 - compatibility and layout stabilization */
:root{--content-width:1320px}
.container{width:min(var(--content-width),calc(100% - 48px))}
.nav-row__inner{min-height:92px;gap:28px}
.brand img{width:64px;height:64px}
.brand__text strong,.brand__text b{font-size:22px}
.primary-nav{min-width:0}
.menu{gap:24px;align-items:center}
.menu li{min-width:0}
.menu a{display:block;white-space:nowrap;font-size:15px}
.header-actions{gap:16px;flex:none}
.header-actions .button{padding:13px 18px;white-space:nowrap}

.hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(480px,.96fr);min-height:720px;column-gap:36px}
.hero__content{padding:42px 0 38px;min-width:0}
.hero h1{font-size:clamp(46px,4.35vw,68px);max-width:720px;margin:24px 0 18px}
.hero__lead{font-size:18px;max-width:660px;margin-bottom:22px}
.benefit-grid{gap:16px 30px;max-width:680px;margin:22px 0 24px}
.benefit__icon{width:40px;height:40px;flex:0 0 40px}
.hero__visual{min-width:0}
.hero__visual picture,.hero__visual img{object-position:50% center}
.quick-calculator--reference{max-width:690px}
.quick-area button{min-width:0;white-space:nowrap}
.quick-calculator__action{grid-template-columns:minmax(0,1fr) 138px}

.section{padding:76px 0}
.section-heading{margin-bottom:28px;align-items:flex-end}
.section-heading>div{min-width:0}
.section-heading h2,.process-section h2{font-size:clamp(34px,3.2vw,50px)}
.section-heading p{max-width:760px}
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.service-card{min-width:0;height:100%}
.service-card>img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}
.service-card__body{min-height:292px;padding:18px 18px 16px}
.service-card h3{font-size:19px;overflow-wrap:anywhere}
.service-card p{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.service-card strong{font-size:20px}
.service-card .button{font-size:13px;padding-inline:12px;white-space:normal;text-align:center}
.trust-strip{padding:22px 12px}
.trust-strip>div{padding:0 22px}

.expanded-calculator-section{padding:76px 0;background:#fff;overflow:hidden}
.expanded-calculator__layout{width:min(var(--content-width),calc(100% - 48px));margin-inline:auto;display:grid;grid-template-columns:minmax(390px,.9fr) minmax(0,1.1fr);align-items:stretch;gap:48px}
.expanded-calculator__visual{min-height:700px;border:4px solid #25bd82;border-radius:22px 230px 230px 22px;overflow:hidden;background:#eaf8ff}
.expanded-calculator__visual img{width:100%;height:100%;object-fit:cover;object-position:center 36%}
.expanded-calculator__content{min-width:0;padding:8px 0}
.expanded-calculator__content h2{font-size:clamp(38px,3.7vw,54px);margin:14px 0 8px}
.expanded-calculator__intro{font-size:16px;margin-bottom:20px}
.expanded-calculator__top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(150px,.8fr);gap:12px;align-items:end}
.expanded-calculator__top .segment-control{grid-column:auto;min-width:0}
.expanded-calculator__top .check-field{grid-column:1/-1;margin-top:0}
.compact-field{min-width:0}
.compact-field input,.compact-field select{min-width:0}
.extras-panel{margin-top:16px;padding:12px 14px 10px}
.extra-row{gap:12px;padding:9px 4px}
.extra-row>div:first-child{min-width:0}
.extra-row strong{overflow-wrap:anywhere}
.expanded-order-card{margin-top:16px;padding:18px}
.expanded-order-card__price{margin-bottom:12px}
.expanded-order-card__price strong{font-size:30px}
.expanded-order-card__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.expanded-order-card label{min-width:0}
.expanded-order-card input,.expanded-order-card textarea{min-width:0}

.price-table-wrap{max-width:100%}
.category-band{min-height:128px}
.advantages-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.promotions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.portfolio-card{min-width:0}
.portfolio-card__body{min-width:0}
.process-grid article{min-width:0}
.cta-band__inner{min-width:0}
.footer-grid--wide{grid-template-columns:1.3fr .9fr .9fr 1.1fr;gap:36px}

@media(max-width:1250px){
  .container,.expanded-calculator__layout{width:min(1120px,calc(100% - 32px))}
  .nav-row__inner{min-height:84px}
  .brand img{width:56px;height:56px}
  .brand__text strong,.brand__text b{font-size:19px}
  .hero__grid{grid-template-columns:minmax(0,1fr) 44%;min-height:680px;column-gap:24px}
  .hero h1{font-size:clamp(42px,5vw,58px)}
  .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .expanded-calculator__layout{grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);gap:30px}
  .expanded-calculator__visual{min-height:760px;border-radius:20px 180px 180px 20px}
  .expanded-calculator__content h2{font-size:42px}
  .advantages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid--wide{grid-template-columns:1.2fr 1fr 1fr;gap:34px}
  .footer-grid--wide>div:last-child{grid-column:1/-1}
}

@media(max-width:1020px){
  .hero__grid{grid-template-columns:1fr 42%;min-height:640px}
  .hero__lead{font-size:17px}
  .benefit-grid{grid-template-columns:1fr}
  .expanded-calculator__layout{display:flex;flex-direction:column;gap:30px}
  .expanded-calculator__visual{width:100%;height:520px;min-height:0;border-radius:22px 220px 220px 22px}
  .expanded-calculator__visual img{object-position:center 32%}
  .expanded-calculator__content{width:100%;padding:0}
  .expanded-calculator__top{grid-template-columns:1.2fr .8fr 1fr}
  .expanded-calculator__top .segment-control{grid-column:span 2}
  .expanded-calculator__top .check-field{grid-column:1/-1}
  .portfolio-grid{grid-template-columns:1fr}
}

@media(max-width:780px){
  .container,.expanded-calculator__layout{width:calc(100% - 24px)}
  .nav-row__inner{min-height:76px}
  .brand img{width:48px;height:48px}
  .brand__text strong,.brand__text b{font-size:17px}
  .hero__grid{display:flex;flex-direction:column;min-height:0}
  .hero__content{padding:30px 0 22px}
  .hero h1{font-size:40px;line-height:1.08;margin:20px 0 16px}
  .hero__lead{font-size:16px}
  .hero__visual{order:2;height:470px;margin:0 -12px}
  .hero__visual picture,.hero__visual img{object-position:54% center}
  .quick-calculator--reference{max-width:none}
  .quick-area{grid-template-columns:repeat(4,minmax(0,1fr))}
  .quick-calculator__action{grid-template-columns:1fr}
  .service-grid{display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;padding:2px 2px 14px}
  .service-card{flex:0 0 min(84vw,330px);scroll-snap-align:start}
  .service-card__body{min-height:280px}
  .trust-strip{grid-template-columns:1fr}
  .expanded-calculator-section{padding:58px 0}
  .expanded-calculator__visual{height:410px;border-radius:18px 130px 130px 18px}
  .expanded-calculator__content h2{font-size:36px}
  .expanded-calculator__top{grid-template-columns:1fr}
  .expanded-calculator__top .segment-control{grid-column:auto}
  .expanded-calculator__top .check-field{grid-column:auto}
  .expanded-order-card__fields{grid-template-columns:1fr}
  .advantages-grid,.promotions-grid{grid-template-columns:1fr}
  .portfolio-card{grid-template-columns:1fr}
  .portfolio-card>img{min-height:220px;max-height:300px}
  .footer-grid--wide{grid-template-columns:1fr}
  .footer-grid--wide>div:last-child{grid-column:auto}
}

@media(max-width:430px){
  .brand__text small{display:none}
  .brand__text strong,.brand__text b{font-size:15px}
  .hero h1{font-size:34px}
  .quick-area button{font-size:11px}
  .expanded-calculator__visual{height:350px}
  .extra-row{grid-template-columns:1fr auto}
  .extra-row>div:first-child{display:block}
  .quantity-control{grid-template-columns:28px 24px 28px}
  .quantity-control button{width:28px;height:28px}
}

/* Release 0.3.2 — visual polish and responsive rebuild */
:root{
  --content-width:1320px;
  --section-space:76px;
  --section-space-mobile:52px;
  --radius-sm:14px;
  --radius-md:20px;
  --radius-lg:28px;
}
html,body{max-width:100%;overflow-x:hidden}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.5}
h1,h2,h3,p{overflow-wrap:break-word}
.container{width:min(var(--content-width),calc(100% - 48px))}
.section{padding:var(--section-space) 0}
.section-heading h2,.process-section h2{font-size:clamp(34px,3.15vw,48px);line-height:1.08;letter-spacing:-.035em}
.section-heading p{font-size:17px;line-height:1.55}
.eyebrow{font-size:13px;padding:8px 14px;line-height:1.25}
.button{min-height:48px;border-radius:12px;padding:13px 22px;line-height:1.15}

/* Header */
.topbar__inner{min-height:38px}
.topbar{font-size:13px}
.nav-row__inner{min-height:84px;gap:24px}
.brand{gap:11px}
.brand img{width:58px;height:58px}
.brand__text strong,.brand__text b{font-size:20px;letter-spacing:-.02em}
.brand__text b{margin-top:2px}
.brand__text small{font-size:11px;margin-top:6px}
.menu{gap:25px}
.menu a{font-size:14px;font-weight:700}
.header-actions{gap:14px}
.header-phone{font-size:16px}
.header-actions .button{min-height:46px;padding:12px 17px;font-size:14px}

/* Hero */
.hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(470px,.96fr);min-height:690px;column-gap:36px}
.hero__content{padding:38px 0 32px}
.hero h1{font-size:clamp(46px,4.1vw,64px);line-height:1.04;max-width:700px;margin:22px 0 16px}
.hero__lead{font-size:18px;line-height:1.55;max-width:650px;margin-bottom:20px}
.hero__visual-mobile{display:none}
.hero__visual{min-width:0}
.hero__visual picture,.hero__visual img{object-position:52% center}
.hero__visual:after{height:30%;inset:auto -18% -12% 47%;opacity:.78}
.benefit-grid{max-width:660px;gap:14px 24px;margin:20px 0 22px}
.benefit{gap:11px;min-width:0}
.benefit__icon{width:38px;height:38px;flex:0 0 38px;font-size:16px}
.benefit strong{font-size:14px;line-height:1.25}
.benefit small{font-size:12px;line-height:1.3;margin-top:3px}
.quick-calculator--reference{max-width:680px}
.quick-area{border-width:1.5px}
.quick-area button{min-height:40px;font-size:12px}
.quick-calculator__selects{gap:10px}
.quick-calculator__selects select{height:44px;padding:0 15px}
.quick-calculator__action{grid-template-columns:minmax(0,1fr) 150px;gap:10px}
.quick-price-pill{min-height:44px;font-size:14px}
.quick-calculator__note{font-size:12px;margin-top:8px}

/* Popular services */
.services-section{padding-top:68px;padding-bottom:68px}
.service-grid--popular{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.service-card{border-radius:18px;box-shadow:0 10px 28px rgba(14,48,88,.07);transition:transform .2s ease,box-shadow .2s ease}
.service-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(14,48,88,.11)}
.service-card>img{aspect-ratio:16/10;object-fit:cover;object-position:center}
.service-card__body{min-height:270px;padding:18px}
.service-card h3{font-size:20px;line-height:1.25;margin-bottom:10px}
.service-card p{font-size:14px;line-height:1.45;margin-bottom:14px}
.service-card strong{font-size:21px;margin-top:auto;margin-bottom:14px}
.service-card .button{font-size:13px;min-height:44px;padding:10px 12px}

/* Promo */
.promo-banner-section{padding:26px 0 42px}
.promo-banner{min-height:190px;grid-template-columns:190px minmax(0,1fr) auto;gap:28px;padding:30px 42px;border-radius:24px}
.promo-banner__gift{width:138px;height:100px}
.promo-banner h2{font-size:clamp(30px,2.5vw,40px)}
.promo-banner p{font-size:16px;line-height:1.45}

/* Price section */
.price-section .container{max-width:1080px}
.price-tabs{margin-bottom:22px}
.price-table-wrap{border-radius:16px}
.price-table{min-width:800px}
.price-table th,.price-table td{padding:15px 18px}
.price-section__bottom{gap:20px;margin-top:20px}

/* Categories */
.category-section{background:#f7fbff}
.category-section .container{max-width:1040px}
.category-bands{gap:13px}
.category-band{min-height:112px;grid-template-columns:64px minmax(0,1fr) 48px;padding:20px 28px;gap:18px;border-width:1.5px}
.category-band strong{font-size:clamp(20px,1.8vw,27px)}
.category-band__number{width:50px;height:50px;font-size:18px}
.category-band__arrow{width:42px;height:42px;font-size:24px}

/* Expanded calculator */
.expanded-calculator-section{padding:72px 0;background:#fff}
.expanded-calculator__layout{width:min(1440px,calc(100% - 48px));grid-template-columns:minmax(470px,.92fr) minmax(540px,1.08fr);gap:44px;align-items:start}
.expanded-calculator__visual{min-height:760px;max-height:920px;border-radius:24px 220px 220px 24px}
.expanded-calculator__visual img{object-position:center 34%}
.expanded-calculator__content{padding:4px 0;min-width:0}
.expanded-calculator__content h2{font-size:clamp(38px,3.3vw,50px);line-height:1.08;margin:13px 0 8px}
.expanded-calculator__intro{font-size:15px;line-height:1.5;margin-bottom:18px}
.expanded-calculator__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px 12px}
.expanded-calculator__top .segment-control{grid-column:1/-1}
.expanded-calculator__top .check-field{grid-column:1/-1;min-height:36px}
.segment-control button,.compact-field input,.compact-field select{height:46px}
.compact-field{font-size:12px;gap:5px}
.extras-panel{margin-top:14px;padding:12px 14px 10px;border-radius:14px}
.extras-panel__heading{gap:10px}
.extras-panel__heading strong{font-size:16px}
.extras-panel__heading span{font-size:12px}
.extra-row{grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:10px 4px}
.extra-row>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0}
.extra-row strong{font-size:13px;line-height:1.3;min-width:0}
.extra-row small{font-size:12px;line-height:1.3;color:#6f7d8d;white-space:nowrap}
.quantity-control{grid-template-columns:34px 26px 34px;gap:5px}
.quantity-control button{width:34px;height:34px;border-radius:9px}
.expanded-order-card{margin-top:14px;padding:18px;border-radius:18px}
.expanded-order-card__price{margin-bottom:12px}
.expanded-order-card__price strong{font-size:31px;line-height:1.15}
.expanded-order-card__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.expanded-order-card input,.expanded-order-card textarea{min-height:44px;border-radius:12px}
.expanded-order-card input[type=file]{padding:8px;border-style:dashed}
.expanded-order-card input[type=file]::file-selector-button{border:0;border-radius:9px;background:#eaf5ff;color:#0874d1;font-weight:750;padding:9px 12px;margin-right:10px;cursor:pointer}
.upload-field small{font-size:11px;line-height:1.35}

/* Advantages, promotions, portfolio */
.advantages-section{background:#fff}
.advantages-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.advantage-card{min-height:220px;padding:26px;border-radius:18px}
.advantage-card>span{width:48px;height:48px;border-radius:14px}
.advantage-card h3{font-size:20px;margin:18px 0 8px}
.advantage-card p{font-size:14px;line-height:1.5}
.promotions-section{padding-top:70px;padding-bottom:70px}
.promotions-grid{gap:18px}
.promotion-card{min-height:230px;padding:26px;border-radius:18px}
.promotion-card h3{font-size:23px;margin:15px 0 10px}
.promotion-card p{font-size:14px;line-height:1.5}
.portfolio-grid{gap:22px}
.portfolio-card{grid-template-columns:46% minmax(0,1fr);border-radius:18px}
.portfolio-card>img{min-height:300px}
.portfolio-card__body{padding:24px}
.portfolio-card h3{font-size:22px;margin:11px 0}
.portfolio-card ul{font-size:14px;margin-bottom:18px}

/* Process, CTA, footer */
.process-section{padding-top:62px;padding-bottom:62px}
.process-grid{gap:18px;margin-top:28px}
.process-grid article{padding:24px 22px;min-height:155px}
.process-grid h3{font-size:18px}
.process-grid p{font-size:14px;line-height:1.45}
.cta-band{padding:20px 0 58px}
.cta-band__inner{padding:26px 30px}
.site-footer{padding-top:48px}
.footer-grid--wide{gap:32px}

@media(max-width:1250px){
  .container,.expanded-calculator__layout{width:min(1120px,calc(100% - 32px))}
  .menu{gap:18px}.menu a{font-size:13px}
  .header-actions .button{display:none}
  .hero__grid{grid-template-columns:minmax(0,1fr) 43%;min-height:650px;column-gap:24px}
  .hero h1{font-size:clamp(42px,4.8vw,56px)}
  .service-grid--popular{grid-template-columns:repeat(2,minmax(0,1fr))}
  .expanded-calculator__layout{grid-template-columns:minmax(400px,.88fr) minmax(0,1.12fr);gap:30px}
  .expanded-calculator__visual{min-height:780px}
  .advantages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1000px){
  .primary-nav{display:none}
  .menu-toggle{display:block;margin-left:auto}
  .header-actions{display:none}
  .primary-nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #edf1f5;padding:14px 18px;box-shadow:0 18px 30px rgba(14,48,88,.12)}
  .primary-nav.is-open .menu{display:grid;gap:0}
  .primary-nav.is-open .menu a{padding:13px 8px;border-bottom:1px solid #edf1f5;font-size:15px}
  .hero__grid{grid-template-columns:minmax(0,1fr) 40%;min-height:610px}
  .benefit-grid{grid-template-columns:1fr}
  .expanded-calculator__layout{display:flex;flex-direction:column;gap:26px}
  .expanded-calculator__visual{width:100%;height:460px;min-height:0;border-radius:22px 180px 180px 22px}
  .expanded-calculator__content{width:100%}
  .expanded-calculator__top{grid-template-columns:repeat(3,minmax(0,1fr))}
  .expanded-calculator__top .segment-control{grid-column:span 2}
  .expanded-calculator__top .check-field{grid-column:1/-1}
  .portfolio-card{grid-template-columns:1fr}
  .portfolio-card>img{height:270px;min-height:0}
}

@media(max-width:780px){
  :root{--section-space-mobile:50px}
  .container,.expanded-calculator__layout{width:calc(100% - 24px)}
  .section{padding:var(--section-space-mobile) 0}
  .topbar__inner{min-height:36px;padding:0}
  .topbar{font-size:12px}
  .topbar__item:first-child{max-width:58%;overflow:hidden;text-overflow:ellipsis}
  .topbar__wide,.topbar__links a:not(.topbar__phone){display:none}
  .topbar__phone{font-size:13px}
  .nav-row__inner{min-height:72px}
  .brand img{width:46px;height:46px}
  .brand__text strong,.brand__text b{font-size:16px}
  .brand__text small{display:none}
  .menu-toggle{width:44px;height:44px}

  .hero__grid{display:block;min-height:0}
  .hero__content{padding:28px 0 26px}
  .hero h1{font-size:clamp(34px,10.2vw,40px);line-height:1.07;margin:18px 0 14px;letter-spacing:-.035em}
  .hero__lead{font-size:16px;line-height:1.55;margin-bottom:18px}
  .hero__visual{display:none}
  .hero__visual-mobile{display:block;height:330px;margin:0 0 20px;border-radius:26px;overflow:hidden;position:relative;background:#eef8ff}
  .hero__visual-mobile:after{content:"";position:absolute;right:-55px;bottom:-70px;width:180px;height:180px;border-radius:50%;background:linear-gradient(135deg,#8bd92a,#56ad0d);opacity:.9}
  .hero__visual-mobile img{width:100%;height:100%;object-fit:cover;object-position:52% 20%}
  .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 20px}
  .benefit{align-items:flex-start;gap:8px}
  .benefit__icon{width:32px;height:32px;flex-basis:32px;font-size:14px}
  .benefit strong{font-size:13px;line-height:1.25}
  .benefit small{font-size:11px}
  .quick-calculator--reference{padding:0}
  .quick-area{grid-template-columns:repeat(4,minmax(0,1fr));border-radius:14px}
  .quick-area button{min-height:42px;font-size:11px;padding:6px 2px}
  .quick-area button:last-child{grid-column:3/5}
  .quick-calculator__selects{grid-template-columns:1fr;gap:9px;margin-top:10px}
  .quick-calculator__selects select{height:50px;border-radius:14px;font-size:15px}
  .quick-calculator__action{grid-template-columns:1fr;gap:9px;margin-top:10px}
  .quick-price-pill{order:-1;min-height:48px;border-radius:14px;font-size:16px}
  .quick-calculator__action .button{min-height:50px;border-radius:14px}

  .section-heading{display:block;margin-bottom:24px}
  .section-heading h2,.process-section h2{font-size:clamp(30px,8.6vw,36px);line-height:1.1;margin:12px 0 8px}
  .section-heading p{font-size:15px;line-height:1.5}
  .section-heading .text-link{display:inline-block;margin-top:12px;font-size:14px}
  .eyebrow{font-size:12px;padding:7px 12px}

  .services-section{padding-top:48px;padding-bottom:48px}
  .service-grid--popular{display:grid;grid-template-columns:1fr;gap:14px;overflow:visible;padding:0}
  .service-grid--popular .service-card{display:grid;grid-template-columns:38% minmax(0,1fr);min-width:0;min-height:176px;border-radius:16px;scroll-snap-align:none}
  .service-grid--popular .service-card>img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
  .service-grid--popular .service-card__body{min-height:0;padding:15px 14px}
  .service-grid--popular .service-card h3{font-size:17px;margin-bottom:6px}
  .service-grid--popular .service-card p{display:none}
  .service-grid--popular .service-card strong{font-size:18px;margin:4px 0 10px}
  .service-grid--popular .service-card .button{min-height:40px;font-size:12px;padding:8px 10px}

  .page-service-grid .service-grid{display:grid;grid-template-columns:1fr;gap:14px;overflow:visible;padding:0}
  .page-service-grid .service-card{display:grid;grid-template-columns:38% minmax(0,1fr);min-width:0;min-height:176px}
  .page-service-grid .service-card>img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
  .page-service-grid .service-card__body{min-height:0;padding:15px 14px}
  .page-service-grid .service-card h3{font-size:17px;margin-bottom:6px}
  .page-service-grid .service-card p{display:none}
  .page-service-grid .service-card strong{font-size:18px;margin:4px 0 10px}
  .page-service-grid .service-card .button{min-height:40px;font-size:12px}

  .promo-banner-section{padding:16px 0 34px}
  .promo-banner{display:block;min-height:0;padding:24px 22px;border-radius:20px}
  .promo-banner__gift{display:none}
  .promo-banner__content>span{font-size:10px}
  .promo-banner h2{font-size:30px;line-height:1.12;margin:8px 0 10px}
  .promo-banner p{font-size:15px}
  .promo-banner .button{width:100%;margin-top:18px;min-height:48px}

  .price-section .container{max-width:none}
  .price-tabs{justify-content:stretch;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;overflow:visible}
  .price-tabs button{min-width:0;padding:11px 8px;font-size:14px}
  .price-table-wrap{overflow:visible;border:0;box-shadow:none;background:transparent}
  .price-table{display:block;min-width:0;width:100%}
  .price-table thead{display:none}
  .price-table tbody{display:grid;gap:12px}
  .price-table tr{display:block;border:1px solid #dce8f2;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(14,48,88,.05)}
  .price-table tbody th{display:block;padding:15px 16px 10px;border:0;font-size:18px;line-height:1.25}
  .price-table tbody td{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 16px;border:0;font-size:14px;text-align:right}
  .price-table tbody td:before{content:attr(data-label);color:#667085;font-weight:600;text-align:left}
  .price-table tbody td:last-child{padding-bottom:15px}
  .price-section__bottom{display:grid;gap:14px;margin-top:18px}
  .price-section__bottom p{font-size:14px;line-height:1.5;margin:0}
  .price-section__bottom .button{width:100%}

  .category-section .container{max-width:none}
  .category-bands{gap:10px}
  .category-band{min-height:92px;grid-template-columns:42px minmax(0,1fr) 34px;padding:15px 14px;gap:11px;border-radius:16px}
  .category-band strong{font-size:18px;line-height:1.22}
  .category-band__number{width:38px;height:38px;border-radius:11px;font-size:15px}
  .category-band__arrow{width:32px;height:32px;font-size:18px}
  .category-band:before{background-image:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.9)),var(--category-image)}

  .expanded-calculator-section{padding:48px 0}
  .expanded-calculator__layout{display:flex;flex-direction:column;gap:22px}
  .expanded-calculator__visual{width:100%;height:280px;min-height:0;border-width:3px;border-radius:20px 90px 90px 20px}
  .expanded-calculator__visual img{object-position:center 26%}
  .expanded-calculator__content{padding:0}
  .expanded-calculator__content h2{font-size:34px;line-height:1.1;margin:12px 0 8px}
  .expanded-calculator__intro{font-size:14px;line-height:1.5;margin-bottom:16px}
  .expanded-calculator__top{grid-template-columns:1fr;gap:10px}
  .expanded-calculator__top .segment-control,.expanded-calculator__top .check-field{grid-column:auto}
  .segment-control{min-width:0;border-radius:14px}
  .segment-control button{height:44px}
  .compact-field{font-size:12px}
  .compact-field input,.compact-field select{height:50px;border-radius:14px;font-size:15px}
  .check-field{font-size:14px}
  .extras-panel{padding:12px;border-radius:16px}
  .extras-panel__heading{display:grid;gap:3px}
  .extras-panel__heading strong{font-size:17px}
  .extra-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:11px 2px}
  .extra-row>div:first-child{display:grid;grid-template-columns:1fr;gap:2px}
  .extra-row strong{font-size:14px;line-height:1.3}
  .extra-row small{font-size:12px;white-space:normal}
  .quantity-control{grid-template-columns:36px 24px 36px}
  .quantity-control button{width:36px;height:36px}
  .extras-toggle{height:42px;font-size:14px}
  .expanded-order-card{padding:18px 16px;border-radius:18px}
  .expanded-order-card__price strong{font-size:30px}
  .expanded-order-card__fields{grid-template-columns:1fr;gap:10px}
  .expanded-order-card label{font-size:13px}
  .expanded-order-card input,.expanded-order-card textarea{min-height:50px;font-size:15px}
  .expanded-order-card .button{min-height:52px}

  .advantages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .advantage-card{min-height:190px;padding:18px 16px;border-radius:16px}
  .advantage-card>span{width:42px;height:42px;font-size:14px}
  .advantage-card h3{font-size:17px;line-height:1.25;margin:14px 0 7px}
  .advantage-card p{font-size:13px;line-height:1.4}

  .promotions-grid{grid-template-columns:1fr;gap:12px}
  .promotion-card{min-height:180px;padding:22px;border-radius:16px}
  .promotion-card h3{font-size:23px;line-height:1.18;margin:12px 0 8px}
  .promotion-card p{font-size:14px;margin-bottom:16px}
  .legal-note{font-size:12px;line-height:1.45;margin-top:16px}

  .portfolio-grid{grid-template-columns:1fr;gap:16px}
  .portfolio-card{display:block;border-radius:18px}
  .portfolio-section .portfolio-card:nth-child(n+3){display:none}
  .portfolio-card>img{height:190px;min-height:0;object-position:center}
  .portfolio-card__body{padding:20px}
  .portfolio-card h3{font-size:23px;line-height:1.2}
  .portfolio-card ul{font-size:14px;margin-bottom:16px}
  .portfolio-note{font-size:12px;line-height:1.45}

  .process-section{padding-top:48px;padding-bottom:48px}
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
  .process-grid article{padding:20px 15px 16px;min-height:160px;border-radius:14px}
  .process-grid article>span{left:14px}
  .process-grid h3{font-size:16px;line-height:1.25}
  .process-grid p{font-size:13px;line-height:1.4}
  .cta-band{padding:12px 0 44px}
  .cta-band__inner{display:grid;gap:14px;padding:22px;border-radius:16px}
  .cta-band__inner>div{margin:0}
  .cta-band h2{font-size:24px}
  .cta-band p{font-size:14px}
  .cta-band .button,.cta-band__phone{width:100%;text-align:center;justify-content:center}
  .site-footer{padding:42px 0 86px}
  .footer-grid--wide{grid-template-columns:1fr;gap:26px}
  .footer-bottom{display:grid;gap:8px;font-size:12px}
}

@media(max-width:330px){
  .brand__text strong,.brand__text b{font-size:14px}
  .hero h1{font-size:33px}
  .hero__visual-mobile{height:300px}
  .benefit-grid{grid-template-columns:1fr}
  .advantages-grid{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr}
}


/* 0.3.3 — header spacing, room label and consent alignment */
.primary-nav{flex:1;margin-left:18px;min-width:0}
.primary-nav .menu{display:flex;align-items:center;justify-content:center;gap:clamp(18px,1.45vw,28px)}
.primary-nav .menu li{flex:0 0 auto}
.primary-nav .menu a{display:flex;align-items:center;min-height:48px;padding:10px 0;font-size:14px;line-height:1.2;white-space:nowrap}
.header-actions{margin-left:auto}
.segment-field{display:grid;gap:5px;min-width:0;color:#6e7c8e;font-size:12px;line-height:1.25}
.segment-field__label{display:block}
.expanded-calculator__top .segment-field{grid-column:1/-1}
.segment-field .segment-control{width:100%}
.expanded-order-card .consent{display:flex;align-items:center;gap:10px;margin:14px 0;color:#526174;font-size:12px;line-height:1.35}
.expanded-order-card .consent input{flex:0 0 18px;width:18px;height:18px;min-height:0;margin:0;padding:0;accent-color:#25b874}
.expanded-order-card .consent span{display:block}
.request-form .consent{display:flex;align-items:center;gap:10px}
.request-form .consent input{flex:0 0 18px;width:18px;height:18px;min-height:0;margin:0;padding:0}
@media(max-width:1250px) and (min-width:1001px){
  .primary-nav{margin-left:10px}
  .primary-nav .menu{gap:14px}
  .primary-nav .menu a{font-size:13px}
}
@media(max-width:1000px) and (min-width:781px){
  .expanded-calculator__top .segment-field{grid-column:span 2}
}
@media(max-width:780px){
  .expanded-calculator__top .segment-field{grid-column:auto}
  .segment-field{font-size:12px}
  .expanded-order-card .consent{font-size:13px;align-items:flex-start}
  .expanded-order-card .consent input{margin-top:1px}
}

/* 0.4.0 — dynamic trust, content and conversion blocks */
.section-lead{font-size:18px;color:var(--muted);margin:0 0 28px;max-width:760px}
.portfolio-card h3 a:hover,.portfolio-card h3 a:focus{color:var(--blue)}
.before-after{position:relative;overflow:hidden;aspect-ratio:16/10;background:#edf3f8;isolation:isolate}
.before-after>img,.before-after__after img{width:100%;height:100%;object-fit:cover}
.before-after__after{position:absolute;inset:0;clip-path:inset(0 0 0 50%)}
.before-after input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:4}
.before-after:after{content:"";position:absolute;top:0;bottom:0;left:var(--compare-left,50%);width:3px;background:#fff;box-shadow:0 0 0 1px rgba(11,31,70,.15);transform:translateX(-50%);pointer-events:none;z-index:3}
.before-after:before{content:"↔";position:absolute;left:var(--compare-left,50%);top:50%;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--blue);font-weight:900;transform:translate(-50%,-50%);box-shadow:0 8px 24px rgba(11,31,70,.18);pointer-events:none;z-index:4}
.before-after__label{position:absolute;top:14px;padding:6px 10px;border-radius:999px;background:rgba(11,31,70,.78);color:#fff;font-size:12px;font-weight:800;z-index:5;pointer-events:none}
.before-after__label--before{left:14px}.before-after__label--after{right:14px}.before-after--large{border-radius:24px;aspect-ratio:16/11}

.guarantees-section{background:linear-gradient(180deg,#fff,#f7fbff)}
.guarantees-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:center}
.guarantees-visual{position:relative;min-height:640px;border-radius:30px 180px 30px 30px;overflow:hidden;border:3px solid #29b978;background:#eef8f4}
.guarantees-visual>img{width:100%;height:100%;min-height:640px;object-fit:cover}
.guarantees-badge{position:absolute;left:28px;bottom:28px;display:grid;gap:4px;max-width:300px;padding:18px 20px;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:var(--shadow)}
.guarantees-badge strong{font-size:18px}.guarantees-badge span{font-size:14px;color:var(--muted)}
.guarantees-content h2{font-size:clamp(38px,4vw,58px);line-height:1.08;letter-spacing:-.035em;margin:18px 0 14px}
.guarantees-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 28px}
.guarantees-list article{display:flex;gap:12px;padding:18px;border:1px solid #dce8f2;border-radius:16px;background:#fff}
.guarantees-list article>span{flex:0 0 34px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eef9df;color:var(--green);font-weight:900}
.guarantees-list h3{font-size:16px;margin:0 0 6px}.guarantees-list p{font-size:13px;color:var(--muted);margin:0}

.process-grid--five{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.process-grid--five article{min-height:210px;padding:30px 20px 20px}

.team-section{background:#f7fbff}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.team-card{overflow:hidden;border:1px solid #dce8f2;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(14,48,88,.06)}
.team-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.team-card>div{padding:20px}.team-card span{display:block;color:#168b64;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.team-card h3{font-size:21px;line-height:1.25;margin:8px 0}.team-card p{color:var(--muted);font-size:14px;margin:0 0 10px}.team-card small{color:var(--blue);font-weight:750}

.equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.equipment-card{position:relative;min-height:230px;padding:26px;border:1px solid #dce8f2;border-radius:18px;background:linear-gradient(145deg,#fff,#f8fbff);overflow:hidden}
.equipment-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-45px;bottom:-55px;background:#e9f8dc}
.equipment-card__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#0aa7cf,#20be7c);color:#fff;font-weight:900}
.equipment-card h3{font-size:21px;margin:18px 0 6px}.equipment-card strong{font-size:13px;color:#168b64}.equipment-card p{position:relative;z-index:1;color:var(--muted);font-size:14px;margin:12px 0 0}

.reviews-section{background:#f7fbff}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.review-card{display:flex;flex-direction:column;min-height:280px;padding:24px;border:1px solid #dce8f2;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,48,88,.05)}
.review-card__top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.review-card__top strong,.review-card__top span{display:block}.review-card__top>div span{font-size:13px;color:var(--muted);margin-top:4px}.review-stars{color:#f3a31b;letter-spacing:2px;white-space:nowrap}.review-card>p,.review-full-text{color:#4d596b;line-height:1.65}.review-card>p{flex:1}.review-card__bottom{display:flex;justify-content:space-between;gap:14px;margin-top:auto;padding-top:16px;border-top:1px solid #edf2f7;font-size:13px}.review-card__bottom a{color:var(--blue);font-weight:800}.reviews-grid--page{grid-template-columns:repeat(3,minmax(0,1fr))}.review-full-text p{margin:0 0 12px}

.seo-section{background:#fff}
.seo-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:70px;align-items:start}
.seo-layout h2{font-size:clamp(38px,4vw,58px);line-height:1.08;letter-spacing:-.035em;margin:18px 0 0}.seo-copy{font-size:17px;color:#4e5b6d}.seo-copy p:first-child{margin-top:0}.seo-copy .text-link{display:inline-block;margin-top:8px}

.scope-section{background:#f7fbff}
.scope-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:26px;overflow:auto;padding-bottom:3px}
.scope-tabs button{border:1px solid #cfdeec;background:#fff;color:var(--text);border-radius:999px;padding:12px 20px;font-weight:800;white-space:nowrap;cursor:pointer}.scope-tabs button.is-active{background:var(--blue);color:#fff;border-color:var(--blue)}
.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.scope-grid article{padding:24px;border:1px solid #dce8f2;border-radius:18px;background:#fff}.scope-grid h3{font-size:20px;margin:0 0 14px}.scope-grid ul{list-style:none;padding:0;margin:0}.scope-grid li{position:relative;padding-left:24px;margin:10px 0;color:#4e5b6d}.scope-grid li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}
.scope-note{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:20px 24px;border-radius:16px;background:#fff;border:1px solid #dce8f2}.scope-note span{color:var(--muted)}

.faq-layout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:70px;align-items:start}.faq-layout h2{font-size:clamp(38px,4vw,56px);line-height:1.08;margin:18px 0 14px}.faq-layout>div:first-child>p{color:var(--muted);font-size:17px}.messenger-buttons{display:flex;gap:10px;margin-top:24px}
.faq-list{border-top:1px solid #dce8f2}.faq-list details{border-bottom:1px solid #dce8f2}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 4px;cursor:pointer;font-size:17px;font-weight:800;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span[aria-hidden="true"]{font-size:26px;color:#20aa76;transition:.2s}.faq-list details[open] summary>span[aria-hidden="true"]{transform:rotate(45deg)}.faq-list details>div{padding:0 36px 20px 4px;color:var(--muted)}.faq-list details>div p{margin:0}

.geography-section{background:linear-gradient(115deg,#eff8ff,#f5fff0)}
.geography-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:60px;align-items:center}.geography-layout h2{font-size:clamp(36px,4vw,54px);line-height:1.08;margin:18px 0 12px}.geography-layout p{color:var(--muted);font-size:17px}.geography-tags{display:flex;flex-wrap:wrap;gap:10px}.geography-tags span{padding:10px 15px;border:1px solid #cfe0ec;border-radius:999px;background:#fff;font-weight:750}

.contacts-section{background:#fff}.contacts-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.86fr);gap:28px;align-items:stretch}.contacts-card,.callback-card{border:1px solid #dce8f2;border-radius:22px;background:#fff;box-shadow:var(--shadow)}.contacts-card{padding:38px;background:linear-gradient(145deg,#f7fbff,#fff)}.contacts-card h2{font-size:clamp(38px,4vw,56px);line-height:1.08;margin:18px 0 16px}.contacts-phone{display:block;color:var(--blue);font-size:clamp(27px,3vw,40px);font-weight:900;margin:12px 0}.contacts-card p{font-size:17px;color:#4e5b6d;line-height:1.7}.contacts-actions{display:flex;gap:10px;margin:24px 0}.map-buttons{display:flex;flex-wrap:wrap;gap:18px}.map-buttons a{color:var(--blue);font-weight:800}.callback-card{display:grid;align-content:start;gap:14px;padding:34px}.callback-card h3{font-size:28px;margin:0}.callback-card>p{color:var(--muted);margin:0 0 6px}.callback-card label:not(.consent){display:grid;gap:7px;font-size:13px;font-weight:750}.callback-card input{width:100%;min-height:50px;border:1px solid #cfdeec;border-radius:12px;padding:12px 14px}.callback-card .consent{display:flex;align-items:center;gap:10px;font-size:13px;color:#526174}.callback-card .consent input{flex:0 0 18px;width:18px;min-height:18px;height:18px;margin:0}

.work-filters{display:flex;gap:9px;overflow:auto;margin-bottom:28px;padding-bottom:4px}.work-filters a{padding:10px 15px;border:1px solid #cfdeec;border-radius:999px;white-space:nowrap;font-weight:750}.work-filters a.is-active{background:var(--blue);border-color:var(--blue);color:#fff}.portfolio-grid--page{grid-template-columns:repeat(3,minmax(0,1fr))}.empty-state{padding:50px;border:1px dashed #bfcddd;border-radius:20px;text-align:center;background:#f8fbff}.empty-state h2{margin-top:0}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:14px;margin-bottom:22px}.breadcrumbs a{color:var(--blue)}.work-single__layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:34px;align-items:start}.work-single__image{width:100%;border-radius:24px}.work-summary{position:sticky;top:24px;padding:28px;border:1px solid #dce8f2;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.work-summary h2{margin-top:0}.work-summary dl{margin:0 0 24px}.work-summary dl div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #edf2f7}.work-summary dt{color:var(--muted)}.work-summary dd{margin:0;font-weight:800;text-align:right}.work-description{background:#f7fbff}.work-description__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.work-description h2{font-size:32px}.check-list{list-style:none;padding:0}.check-list li{position:relative;padding-left:28px;margin:12px 0}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}

@media(max-width:1250px){
  .process-grid--five{grid-template-columns:repeat(3,minmax(0,1fr))}
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reviews-grid,.reviews-grid--page{grid-template-columns:repeat(2,minmax(0,1fr))}
  .guarantees-layout{gap:36px}.guarantees-visual,.guarantees-visual>img{min-height:560px}
}
@media(max-width:1000px){
  .guarantees-layout,.seo-layout,.faq-layout,.geography-layout,.contacts-layout,.work-single__layout{grid-template-columns:1fr}
  .guarantees-visual{min-height:440px}.guarantees-visual>img{min-height:440px}.guarantees-content{padding-top:0}
  .equipment-grid,.scope-grid,.portfolio-grid--page{grid-template-columns:repeat(2,minmax(0,1fr))}
  .work-summary{position:static}
}
@media(max-width:780px){
  .section-lead{font-size:15px}
  .before-after:before{width:36px;height:36px}.before-after__label{top:10px;font-size:10px}.before-after__label--before{left:10px}.before-after__label--after{right:10px}
  .guarantees-section{padding-top:48px;padding-bottom:48px}.guarantees-layout{gap:24px}.guarantees-visual{min-height:300px;border-radius:20px 80px 80px 20px}.guarantees-visual>img{min-height:300px}.guarantees-badge{left:14px;right:14px;bottom:14px;max-width:none;padding:13px 15px}.guarantees-badge strong{font-size:15px}.guarantees-content h2{font-size:34px}.guarantees-list{grid-template-columns:1fr;gap:10px}.guarantees-list article{padding:14px}.guarantees-content .button{width:100%}
  .process-grid--five{grid-template-columns:1fr}.process-grid--five article{min-height:0}
  .team-grid,.equipment-grid,.reviews-grid,.reviews-grid--page,.scope-grid,.portfolio-grid--page,.work-description__grid{grid-template-columns:1fr}
  .team-card{display:grid;grid-template-columns:38% minmax(0,1fr)}.team-card>img{height:100%;aspect-ratio:auto}.team-card>div{padding:16px}.team-card h3{font-size:17px}
  .equipment-card{min-height:0;padding:20px}.equipment-card h3{font-size:19px}
  .review-card{min-height:0;padding:19px}.review-card__top{display:grid;gap:8px}.review-stars{order:-1}.review-card__bottom{display:grid;gap:6px}
  .seo-layout{gap:22px}.seo-layout h2{font-size:34px}.seo-copy{font-size:15px}
  .scope-tabs{justify-content:flex-start}.scope-tabs button{padding:10px 15px;font-size:13px}.scope-grid article{padding:18px}.scope-note{display:grid;padding:18px}.scope-note .button{width:100%}
  .faq-layout{gap:24px}.faq-layout h2{font-size:34px}.messenger-buttons{display:grid;grid-template-columns:1fr 1fr}.faq-list summary{font-size:15px;padding:18px 2px}.faq-list details>div{padding-right:10px}
  .geography-layout{gap:22px}.geography-layout h2{font-size:34px}.geography-layout p{font-size:15px}.geography-tags span{font-size:13px;padding:8px 12px}
  .contacts-card,.callback-card{padding:22px;border-radius:18px}.contacts-card h2{font-size:34px}.contacts-card p{font-size:15px}.contacts-actions{display:grid;grid-template-columns:1fr 1fr}.map-buttons{display:grid;gap:12px}.callback-card h3{font-size:24px}
  .work-filters{margin-inline:-12px;padding-inline:12px}.work-single-hero h1{font-size:34px}.work-summary{padding:20px}.work-summary dl div{display:grid;gap:3px}.work-summary dd{text-align:left}.work-description h2{font-size:27px}
}

/* ========================================================================
   Release 0.5 — landing pages, canonical menu and input UX
   ======================================================================== */

/* Consistent select controls. The native arrow is replaced only visually;
   the control remains a real accessible <select>. */
.cbz-site select{
  -webkit-appearance:none;
  appearance:none;
  padding-right:52px!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M2 2l5 5 5-5' fill='none' stroke='%230e3159' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 19px center!important;
  background-size:14px 9px!important;
}
.cbz-site select:focus{background-position:right 19px center!important}

/* Real WordPress navigation with two levels. */
.primary-nav .menu{align-items:center;gap:26px}
.primary-nav .menu>li{position:relative;display:flex;align-items:center;min-height:48px}
.primary-nav .menu>li>a{display:flex;align-items:center;min-height:48px;white-space:nowrap}
.submenu-toggle{display:inline-grid;place-items:center;width:28px;height:36px;margin-left:2px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--blue-dark)}
.submenu-toggle span{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s ease}
.menu-item-has-children.is-submenu-open>.submenu-toggle span{transform:translateY(2px) rotate(225deg)}
.primary-nav .sub-menu{list-style:none;margin:0;padding:10px;min-width:280px;background:#fff;border:1px solid #e1eaf2;border-radius:15px;box-shadow:0 18px 48px rgba(12,42,82,.16);z-index:90}
.primary-nav .sub-menu li{margin:0}
.primary-nav .sub-menu a{display:block;padding:11px 13px;border-radius:9px;font-size:14px;font-weight:700;line-height:1.35;white-space:normal}
.primary-nav .sub-menu a:hover,.primary-nav .sub-menu a:focus{background:#eff7ff;color:var(--blue)}
@media(min-width:1251px){
  .primary-nav .sub-menu{display:none;position:absolute;left:0;top:calc(100% - 1px)}
  .primary-nav .menu-item-has-children:hover>.sub-menu,
  .primary-nav .menu-item-has-children:focus-within>.sub-menu,
  .primary-nav .menu-item-has-children.is-submenu-open>.sub-menu{display:block}
  .primary-nav .menu-item-has-children:after{content:"";position:absolute;left:0;right:0;top:100%;height:10px}
}

/* Service cards now lead to real landing pages. */
.service-card__image{display:block;overflow:hidden}
.service-card__image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .3s ease}
.service-card:hover .service-card__image img{transform:scale(1.025)}
.service-card__actions{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-top:auto}
.service-card__details{color:var(--blue);font-size:13px;font-weight:850;padding:8px 2px}
.service-card__actions .button{min-width:0}
.service-grid--catalog{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-grid--catalog .service-card__body{min-height:310px}

/* Linked service-area tags. */
.geography-tags a,.geography-tags span{display:inline-flex;padding:10px 15px;border:1px solid #cfe0ec;border-radius:999px;background:#fff;font-weight:750;transition:.2s ease}
.geography-tags a:hover,.geography-tags a:focus{border-color:#69bdea;color:var(--blue);transform:translateY(-1px)}

/* Service-area hub. */
.service-area-hub{background:linear-gradient(180deg,#fff,#f7fbff)}
.service-area-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:36px;padding:30px;border:1px solid #dce7f1;border-radius:20px;background:#fff}
.service-area-intro h2{font-size:36px;margin:0 0 8px}.service-area-intro p{max-width:760px;margin:0;color:var(--muted)}
.location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.location-card{display:flex;flex-direction:column;padding:26px;border:1px solid #dce7f1;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(14,48,88,.05)}
.location-card>span{color:#169a68;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.location-card h2{font-size:25px;line-height:1.2;margin:10px 0}.location-card p{color:var(--muted);margin:0 0 18px;flex:1}.location-card .text-link{font-size:14px}

/* Shared landing-page composition. */
.landing-page{overflow:hidden}.breadcrumbs{display:flex;align-items:center;gap:9px;padding-top:24px;font-size:13px;color:#6b7787}.breadcrumbs a{color:var(--blue);font-weight:750}.breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.landing-hero,.location-hero{padding:38px 0 76px;background:linear-gradient(120deg,#f1f8ff,#fff 58%,#f5fff0)}
.landing-hero__grid,.location-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.82fr);gap:64px;align-items:center}
.landing-hero h1,.location-hero h1{font-size:clamp(44px,5vw,70px);line-height:1.04;letter-spacing:-.04em;margin:20px 0}
.landing-hero p,.location-hero>div p,.location-hero__grid>div>p{font-size:19px;color:#475467;max-width:760px}
.landing-hero__image{overflow:hidden;border:4px solid #25bd79;border-radius:170px 18px 170px 18px;box-shadow:0 22px 70px rgba(14,48,88,.13)}
.landing-hero__image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.landing-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}
.landing-price{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 18px;width:max-content;max-width:100%;padding:16px 20px;border:1px solid #dce7f1;border-radius:15px;background:#fff}
.landing-price small{grid-column:1/3;color:var(--muted)}.landing-price strong{font-size:25px;color:var(--blue)}.landing-price span{color:var(--muted);font-size:13px}
.location-hero__facts{display:grid;gap:0;padding:12px 28px;background:#fff;border:1px solid #dbe8f2;border-radius:22px;box-shadow:0 20px 60px rgba(14,48,88,.09)}
.location-hero__facts strong{font-size:18px;padding-top:20px}.location-hero__facts span{color:var(--muted);padding:5px 0 20px;border-bottom:1px solid #edf1f5}.location-hero__facts span:last-child{border-bottom:0}
.location-travel{display:grid;gap:4px;margin-top:22px;padding:18px 20px;border-left:4px solid var(--green);border-radius:0 12px 12px 0;background:#fff}.location-travel span{color:#536273}
.landing-content__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr);gap:70px;align-items:start}
.prose{font-size:18px;color:#344054}.prose h2{font-size:clamp(30px,3.4vw,48px);line-height:1.1;color:var(--text);margin:0 0 22px}.prose h3{color:var(--text)}.prose p{margin:0 0 20px}.prose ul{padding-left:22px}
.landing-aside{position:sticky;top:24px;padding:28px;border:1px solid #d7e7df;border-radius:20px;background:linear-gradient(145deg,#f9fffb,#f1f8ff)}.landing-aside h2{font-size:25px;margin:0 0 16px}.landing-aside ul,.check-list{list-style:none;padding:0;margin:0 0 24px}.landing-aside li,.check-list li{position:relative;padding:10px 0 10px 31px;border-bottom:1px solid rgba(15,80,65,.09)}.landing-aside li:before,.check-list li:before{content:"✓";position:absolute;left:0;top:9px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#e9f8d8;color:#4ba70b;font-size:12px;font-weight:900}
.scope-landing{background:#f7fbff}.scope-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.scope-list-grid>div{display:flex;gap:15px;align-items:flex-start;padding:22px;border:1px solid #dce7f1;border-radius:16px;background:#fff}.scope-list-grid span{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#0e9cc7,#20bd78);color:#fff;font-weight:850}.scope-list-grid p{margin:5px 0 0;font-weight:700}
.landing-request{background:linear-gradient(120deg,#eff8ff,#f7fff1)}.landing-request__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.75fr);gap:70px;align-items:center}.landing-request h2{font-size:clamp(36px,4vw,56px);line-height:1.08;margin:18px 0}.landing-request>div p,.landing-request__grid>div>p{font-size:18px;color:var(--muted)}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.related-card{display:grid;grid-template-columns:130px 1fr;align-items:center;overflow:hidden;border:1px solid #dce7f1;border-radius:17px;background:#fff;box-shadow:0 8px 25px rgba(14,48,88,.05)}.related-card img{width:130px;height:120px;object-fit:cover}.related-card div{padding:16px}.related-card h3{font-size:18px;line-height:1.25;margin:0 0 8px}.related-card strong{color:var(--blue)}
.location-services,.related-locations{background:#f8fbff}.geography-tags--links{justify-content:flex-start}

@media(max-width:1250px){
  .primary-nav.is-open .menu>li{display:grid;grid-template-columns:1fr 48px;min-height:0;border-bottom:1px solid #edf1f5}
  .primary-nav.is-open .menu>li>a{padding:14px;border:0;min-height:0}
  .primary-nav.is-open .submenu-toggle{display:grid;width:48px;height:48px;margin:0}
  .primary-nav.is-open .sub-menu{display:none;position:static;grid-column:1/3;min-width:0;border:0;border-radius:0;box-shadow:none;padding:0 0 8px 16px;background:#f8fbff}
  .primary-nav.is-open .menu-item-has-children.is-submenu-open>.sub-menu{display:block}
  .primary-nav.is-open .sub-menu a{padding:11px 14px;border-bottom:0}
  .service-grid--catalog{grid-template-columns:repeat(3,minmax(0,1fr))}
  .landing-hero__grid,.location-hero__grid{grid-template-columns:1fr 42%;gap:35px}
  .landing-content__grid{gap:40px}
  .location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:780px){
  .cbz-site select{padding-right:48px!important;background-position:right 17px center!important}
  .service-card__actions{grid-template-columns:1fr}.service-card__details{text-align:center;padding:5px}
  .service-grid--catalog{grid-template-columns:1fr}.service-grid--catalog .service-card{display:grid;grid-template-columns:38% minmax(0,1fr);min-height:190px}.service-grid--catalog .service-card__image,.service-grid--catalog .service-card__image img{height:100%;aspect-ratio:auto}.service-grid--catalog .service-card__body{min-height:0}.service-grid--catalog .service-card p{display:none}
  .service-area-intro{display:grid;padding:22px}.service-area-intro h2{font-size:30px}.service-area-intro .button{width:100%}.location-grid{grid-template-columns:1fr}.location-card{padding:22px}
  .breadcrumbs{padding-top:16px;overflow:hidden}
  .landing-hero,.location-hero{padding:24px 0 52px}.landing-hero__grid,.location-hero__grid{grid-template-columns:1fr;gap:28px}.landing-hero h1,.location-hero h1{font-size:42px}.landing-hero p,.location-hero__grid>div>p{font-size:17px}.landing-hero__image{border-radius:80px 14px 80px 14px}.landing-price{width:100%;grid-template-columns:1fr}.landing-price small,.landing-price strong,.landing-price span{grid-column:auto}.landing-hero__actions{display:grid}.landing-hero__actions .button{width:100%}
  .landing-content__grid,.landing-request__grid{grid-template-columns:1fr;gap:28px}.landing-aside{position:static}.prose{font-size:16px}.scope-list-grid{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}.related-card{grid-template-columns:110px 1fr}.related-card img{width:110px;height:105px}
}

/* Switch to the compact menu before desktop navigation starts to crowd the
   phone and CTA at common 1280/1366 px widths. */
@media(max-width:1350px) and (min-width:1251px){
  .nav-row__inner{gap:22px}
  .primary-nav{display:none}
  .menu-toggle{display:block;margin-left:auto}
  .primary-nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #edf1f5;padding:20px 16px;box-shadow:0 18px 30px rgba(14,48,88,.12)}
  .primary-nav.is-open .menu{display:grid;gap:0;align-items:stretch}
  .primary-nav.is-open .menu>li{display:grid;grid-template-columns:1fr 48px;min-height:0;border-bottom:1px solid #edf1f5}
  .primary-nav.is-open .menu>li>a{padding:14px;border:0;min-height:0}
  .primary-nav.is-open .submenu-toggle{display:grid;width:48px;height:48px;margin:0}
  .primary-nav.is-open .sub-menu{display:none;position:static;grid-column:1/3;min-width:0;border:0;border-radius:0;box-shadow:none;padding:0 0 8px 16px;background:#f8fbff}
  .primary-nav.is-open .menu-item-has-children.is-submenu-open>.sub-menu{display:block}
  .primary-nav.is-open .sub-menu a{padding:11px 14px}
  .header-actions .header-phone{display:none}
}

/* Release 0.5.1: canonical six-item desktop menu and clearer dropdowns. */
.site-header,.nav-row,.nav-row__inner,.primary-nav{overflow:visible}
.primary-nav .menu{gap:clamp(18px,1.35vw,26px)}
.primary-nav .menu>li{gap:3px}
.primary-nav .menu>li>a{font-weight:780}
.submenu-toggle{width:24px;height:34px;margin-left:0;border-radius:8px}
.submenu-toggle:hover,.submenu-toggle:focus-visible{background:#eff7ff;color:var(--blue)}
.primary-nav .sub-menu{top:calc(100% + 5px);padding:12px}
.primary-nav .cbz-menu-services>.sub-menu{min-width:620px}
.primary-nav .cbz-menu-company>.sub-menu{min-width:260px}
.geography-tags a{gap:8px;text-decoration:none}
.geography-tags a span{font-size:15px;transition:transform .2s ease}
.geography-tags a:hover span,.geography-tags a:focus-visible span{transform:translateX(3px)}
@media(min-width:1251px){
  .primary-nav .cbz-menu-services:hover>.sub-menu,
  .primary-nav .cbz-menu-services:focus-within>.sub-menu,
  .primary-nav .cbz-menu-services.is-submenu-open>.sub-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:2px}
  .primary-nav .cbz-menu-company:hover>.sub-menu,
  .primary-nav .cbz-menu-company:focus-within>.sub-menu,
  .primary-nav .cbz-menu-company.is-submenu-open>.sub-menu{display:block}
  .primary-nav .cbz-menu-services>.sub-menu a{min-height:44px;display:flex;align-items:center}
}
@media(max-width:1250px){
  .primary-nav .cbz-menu-services>.sub-menu,.primary-nav .cbz-menu-company>.sub-menu{min-width:0}
}

/* ========================================================================
   Release 0.5.2 — deterministic navigation and visual regression fixes
   ======================================================================== */

/* Canonical six-item navigation. The public header no longer depends on a
   legacy database menu, so duplicated pages cannot reappear after updates. */
.cbz-canonical-menu,
.cbz-canonical-menu ul{list-style:none;margin:0;padding:0}
.primary-nav .cbz-canonical-menu{display:flex;align-items:center;justify-content:center;gap:clamp(18px,1.35vw,28px)}
.primary-nav .cbz-canonical-menu>li{position:relative;display:flex;align-items:center;gap:2px;min-height:52px}
.primary-nav .cbz-canonical-menu>li>a{display:flex;align-items:center;min-height:52px;padding:9px 0;font-size:14px;font-weight:780;line-height:1.2;white-space:nowrap}
.primary-nav .cbz-canonical-menu>li.current-menu-item>a,
.primary-nav .cbz-canonical-menu>li.current-menu-ancestor>a{color:var(--blue)}
.primary-nav .cbz-canonical-menu>li.current-menu-item>a:after,
.primary-nav .cbz-canonical-menu>li.current-menu-ancestor>a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:999px;background:var(--blue)}
.primary-nav .cbz-canonical-menu .submenu-toggle{display:inline-grid;place-items:center;flex:0 0 26px;width:26px;height:36px;margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:#173152;cursor:pointer}
.primary-nav .cbz-canonical-menu .submenu-toggle:hover,
.primary-nav .cbz-canonical-menu .submenu-toggle:focus-visible{background:#eef7ff;color:var(--blue);outline:0}
.primary-nav .cbz-canonical-menu .submenu-toggle span{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .18s ease}
.primary-nav .cbz-canonical-menu .is-submenu-open>.submenu-toggle span{transform:translateY(2px) rotate(225deg)}

.primary-nav .cbz-canonical-menu .sub-menu{position:absolute;top:calc(100% + 2px);z-index:150;padding:14px;border:1px solid #dce8f2;border-radius:18px;background:#fff;box-shadow:0 24px 64px rgba(10,39,78,.18);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.primary-nav .cbz-canonical-menu .menu-item-has-children:hover>.sub-menu,
.primary-nav .cbz-canonical-menu .menu-item-has-children:focus-within>.sub-menu,
.primary-nav .cbz-canonical-menu .menu-item-has-children.is-submenu-open>.sub-menu{opacity:1;visibility:visible;pointer-events:auto}
.primary-nav .cbz-menu-services>.sub-menu{left:50%;width:min(840px,calc(100vw - 40px));display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 12px;transform:translate(-27%,8px)}
.primary-nav .cbz-menu-services:hover>.sub-menu,
.primary-nav .cbz-menu-services:focus-within>.sub-menu,
.primary-nav .cbz-menu-services.is-submenu-open>.sub-menu{transform:translate(-27%,0)}
.primary-nav .cbz-menu-company>.sub-menu{right:0;left:auto;min-width:285px;transform:translateY(8px)}
.primary-nav .cbz-menu-company:hover>.sub-menu,
.primary-nav .cbz-menu-company:focus-within>.sub-menu,
.primary-nav .cbz-menu-company.is-submenu-open>.sub-menu{transform:translateY(0)}
.primary-nav .cbz-canonical-menu .menu-item-has-children:after{content:"";position:absolute;left:-6px;right:-6px;top:100%;height:12px}
.cbz-mega-menu__group{min-width:0;padding:8px;border-radius:12px}
.cbz-mega-menu__group:hover{background:#f8fbff}
.cbz-mega-menu__title{display:block;margin:0 0 6px;padding:0 8px;color:#758296;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.cbz-mega-menu__group ul{display:grid;gap:2px}
.primary-nav .cbz-mega-menu__group a,
.primary-nav .cbz-company-menu a{display:block;min-height:0;padding:9px 10px;border-radius:9px;color:#15233d;font-size:13px;font-weight:720;line-height:1.3;white-space:normal}
.primary-nav .cbz-mega-menu__group a:hover,
.primary-nav .cbz-mega-menu__group a:focus-visible,
.primary-nav .cbz-company-menu a:hover,
.primary-nav .cbz-company-menu a:focus-visible{background:#eaf5ff;color:var(--blue);outline:0}

/* Decorative shapes must never cover real text. */
.advantage-card>*:not(:after),
.promotion-card>*:not(:before),
.equipment-card>*:not(:after){position:relative;z-index:1}
.advantage-card:after,.promotion-card:before,.equipment-card:after{z-index:0;pointer-events:none}
.advantage-card:after{opacity:.72}
.advantage-card,.promotion-card,.equipment-card{overflow:hidden}
.advantage-card h3,.advantage-card p,.promotion-card h3,.promotion-card p,.equipment-card h3,.equipment-card p{overflow-wrap:break-word}

/* Location pills use one CSS-drawn chevron. The previous nested span inherited
   the pill styles and produced a crooked miniature badge around the arrow. */
.geography-tags{align-items:center}
.geography-tags a,
.geography-tags>span{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;padding:9px 15px;border:1px solid #cfe0ec;border-radius:999px;background:#fff;font-weight:750;line-height:1.2;text-decoration:none;transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease}
.geography-tags a:after{content:"";flex:0 0 7px;width:7px;height:7px;margin:0 2px 0 1px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translateX(0) rotate(45deg);transition:transform .18s ease}
.geography-tags a:hover,
.geography-tags a:focus-visible{border-color:#69bdea;background:#f5fbff;color:var(--blue);transform:translateY(-1px);outline:0}
.geography-tags a:hover:after,
.geography-tags a:focus-visible:after{transform:translateX(3px) rotate(45deg)}

/* General safeguards found during the 0.5.1 desktop/mobile screenshot audit. */
.service-card,.portfolio-card,.team-card,.review-card,.location-card{min-width:0}
.service-card h3,.portfolio-card h3,.team-card h3,.category-band strong,.section-heading h2,.guarantees-content h2,.seo-layout h2,.faq-layout h2,.geography-layout h2{overflow-wrap:break-word}
.expanded-order-card input,.expanded-order-card select,.expanded-order-card textarea,.callback-card input,.request-form input,.request-form textarea{min-width:0;max-width:100%}
.footer-location-link a{font-weight:700}

@media(max-width:1440px) and (min-width:1251px){
  .nav-row__inner{gap:22px}
  .primary-nav{margin-left:8px}
  .primary-nav .cbz-canonical-menu{gap:17px}
  .primary-nav .cbz-canonical-menu>li>a{font-size:13px}
  .header-actions{gap:14px}
  .header-phone{font-size:14px}
  .header-actions .button{padding-inline:18px}
}

@media(max-width:1250px){
  .primary-nav.is-open{max-height:calc(100vh - 118px);overflow:auto;padding:8px 16px 18px}
  .primary-nav.is-open .cbz-canonical-menu{display:grid;align-items:stretch;justify-content:stretch;gap:0}
  .primary-nav.is-open .cbz-canonical-menu>li{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:0;min-height:0;border-bottom:1px solid #e8eef4}
  .primary-nav.is-open .cbz-canonical-menu>li:not(.menu-item-has-children){grid-template-columns:1fr}
  .primary-nav.is-open .cbz-canonical-menu>li>a{min-height:50px;padding:14px 8px;font-size:15px}
  .primary-nav.is-open .cbz-canonical-menu>li.current-menu-item>a:after,
  .primary-nav.is-open .cbz-canonical-menu>li.current-menu-ancestor>a:after{display:none}
  .primary-nav.is-open .cbz-canonical-menu .submenu-toggle{display:grid;width:48px;height:50px}
  .primary-nav.is-open .cbz-canonical-menu .sub-menu{display:none!important;position:static;grid-column:1/3;width:auto;min-width:0;padding:6px 0 12px 14px;border:0;border-radius:0;background:#f7fbff;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none!important}
  .primary-nav.is-open .cbz-canonical-menu .menu-item-has-children.is-submenu-open>.sub-menu{display:block!important}
  .primary-nav.is-open .cbz-mega-menu__group{padding:7px 8px}
  .primary-nav.is-open .cbz-mega-menu__group:hover{background:transparent}
  .primary-nav.is-open .cbz-mega-menu__title{margin-top:5px}
  .primary-nav.is-open .cbz-mega-menu__group a,
  .primary-nav.is-open .cbz-company-menu a{padding:9px 10px;font-size:14px}
}

@media(max-width:780px){
  /* Compact but readable cards; no text is hidden by decorative circles. */
  .advantages-grid{grid-template-columns:1fr;gap:10px}
  .advantage-card{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;column-gap:13px;min-height:0;padding:16px;border-radius:16px}
  .advantage-card>span{grid-row:1/3;width:42px;height:42px;margin:0}
  .advantage-card h3{grid-column:2;margin:1px 0 5px;font-size:17px}
  .advantage-card p{grid-column:2;margin:0;font-size:13px;line-height:1.45}
  .advantage-card:after{width:90px;height:90px;right:-38px;bottom:-45px;opacity:.45}

  .geography-tags{gap:8px}
  .geography-tags a,.geography-tags>span{min-height:38px;padding:8px 12px;font-size:13px;gap:8px}

  /* Keep footer compact without sacrificing the requested navigation. */
  .site-footer{padding-top:38px}
  .footer-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}
  .footer-grid--wide>.footer-about,.footer-grid--wide>div:last-child{grid-column:1/-1}
  .site-footer h2{margin:0 0 10px;font-size:16px}
  .site-footer ul{margin:0}
  .site-footer li{margin:6px 0;font-size:13px}
  .site-footer p{font-size:13px}
  .footer-bottom{margin-top:28px;padding-top:18px}

  .service-grid--popular .service-card__details{font-size:12px;text-align:left}
  .service-grid--popular .service-card__actions{gap:7px}
  .promotion-card,.equipment-card{height:auto;min-height:0}
}

@media(max-width:430px){
  .footer-grid--wide{grid-template-columns:1fr}
  .footer-grid--wide>.footer-about,.footer-grid--wide>div:last-child{grid-column:auto}
  .primary-nav.is-open{padding-inline:12px}
  .geography-tags a,.geography-tags>span{width:100%;justify-content:space-between}
}

/* Release 0.5.3 — complete landing content and SEO-oriented catalog hubs. */
.page-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.prose--wide{max-width:980px;margin-inline:auto}
.service-catalog-intro{padding-top:36px;padding-bottom:28px}.service-catalog-intro__content{max-width:none;margin-inline:auto}.service-catalog-intro__content p{max-width:980px}
.page-service-groups{padding-top:34px}
.service-category+.service-category{margin-top:76px}
.service-category__head{max-width:820px;margin-bottom:28px}
.service-category__head h2{font-size:clamp(34px,4vw,52px);line-height:1.08;margin:16px 0 10px}
.service-category__head p{margin:0;color:var(--muted);font-size:17px}
.service-category .service-card__body h3{font-size:22px;line-height:1.2;margin:0 0 10px}
.catalog-cta{padding-top:28px}
.catalog-cta .cta-strip{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 34px;border:1px solid #d9e8f2;border-radius:22px;background:linear-gradient(120deg,#eef8ff,#f5ffe9)}
.catalog-cta h2{font-size:clamp(28px,3.2vw,42px);margin:0 0 8px}.catalog-cta p{margin:0;color:var(--muted);max-width:720px}
.service-locations{background:linear-gradient(180deg,#fff,#f7fbff)}
.service-area-explainer{padding-bottom:44px}
.area-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.area-steps article{padding:24px;border:1px solid #dce7f1;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,48,88,.05)}
.area-steps article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#0e9cc7,#20bd78);color:#fff;font-weight:900}
.area-steps h3{font-size:20px;margin:18px 0 8px}.area-steps p{margin:0;color:var(--muted)}
.service-area-note{display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:center;margin-top:22px;padding:21px 24px;border-left:4px solid var(--green);border-radius:0 16px 16px 0;background:#f8fcff}
.service-area-note strong{font-size:22px}.service-area-note p{margin:0;color:var(--muted)}
.location-card h2,.location-card h3{font-size:25px;line-height:1.2;margin:10px 0}
.service-area-faq{padding-top:42px}

@media(max-width:1050px){
  .area-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  .page-hero__actions{display:grid}.page-hero__actions .button{width:100%}
  .service-catalog-intro{padding-top:20px}.service-category+.service-category{margin-top:52px}.service-category__head{margin-bottom:20px}.service-category__head p{font-size:15px}
  .service-category .service-card__body h3{font-size:19px}
  .catalog-cta .cta-strip{display:grid;padding:24px}.catalog-cta .button{width:100%}
  .area-steps{grid-template-columns:1fr}.area-steps article{padding:20px}
  .service-area-note{grid-template-columns:1fr;gap:7px;padding:18px 20px}
  .location-card h2,.location-card h3{font-size:23px}
}

/* Release 0.5.4 — technical SEO, visible breadcrumbs and enriched hub pages. */
.content-page{padding:0 0 70px}.content-page__inner{padding-top:36px;min-height:55vh}.content-page__inner>article{max-width:980px}.content-page__inner h1{font-size:clamp(38px,5vw,62px);line-height:1.08;margin:0 0 28px}
.page-hero+.section{scroll-margin-top:30px}
.seo-section--soft,.seo-split--soft{background:linear-gradient(180deg,#f7fbff,#fff)}
.seo-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.seo-info-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.seo-info-grid article{min-width:0;padding:25px;border:1px solid #dce7f1;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,48,88,.045)}.seo-info-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#0e9cc7,#20bd78);color:#fff;font-weight:900}.seo-info-grid h3{margin:17px 0 8px;font-size:21px;line-height:1.25}.seo-info-grid p{margin:0;color:var(--muted)}.seo-info-grid a{display:inline-flex;margin-top:15px;color:var(--blue);font-weight:800}
.seo-split__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:48px;align-items:start}.seo-split .prose h2{font-size:clamp(32px,4vw,48px);line-height:1.1;margin:18px 0}.seo-split .prose p{font-size:17px;color:#4f5d70}.seo-link-card,.company-details{padding:28px;border:1px solid #dce7f1;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(14,48,88,.055)}.seo-link-card h2,.company-details h2{margin:0 0 18px;font-size:25px}.seo-link-card a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #e7eef5;color:var(--blue);font-weight:800}.seo-link-card a:after{content:"→"}.seo-link-card a:last-child{border-bottom:0}.company-details dl{margin:0}.company-details dl>div{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid #e7eef5}.company-details dl>div:last-child{border-bottom:0}.company-details dt{color:var(--muted)}.company-details dd{margin:0;font-weight:750}
.price-table caption{caption-side:top;text-align:left;font-weight:800;margin-bottom:12px}.full-price-section+.seo-section{margin-top:10px}
.breadcrumbs{min-height:42px;margin-bottom:0}.breadcrumbs [aria-current="page"]{color:#5f6e80}
.review-full-text p:first-child{margin-top:0}.review-full-text p:last-child{margin-bottom:0}
@media(max-width:1050px){.seo-info-grid,.seo-info-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-split__grid{grid-template-columns:1fr;gap:28px}.seo-link-card,.company-details{position:static}}
@media(max-width:780px){.seo-info-grid,.seo-info-grid--four{grid-template-columns:1fr;gap:12px}.seo-info-grid article{padding:20px}.seo-info-grid h3{font-size:19px}.seo-split .prose p{font-size:15px}.seo-link-card,.company-details{padding:22px}.company-details dl>div{grid-template-columns:1fr;gap:3px}.breadcrumbs{width:min(100% - 32px,1450px);padding-top:15px;min-height:35px}.page-hero{padding-top:32px}.content-page__inner{padding-top:24px}}
.content-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.content-card{padding:26px;border:1px solid #dce7f1;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,48,88,.045)}.content-card h2{font-size:24px;line-height:1.2;margin:0 0 12px}.content-card p{color:var(--muted)}.nav-links{grid-column:1/-1;display:flex;justify-content:center;gap:10px;margin-top:20px}.nav-links .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;border:1px solid #d6e3ed;border-radius:10px}.nav-links .current{background:var(--blue);color:#fff;border-color:var(--blue)}
@media(max-width:900px){.content-list{grid-template-columns:1fr}}
.article-page{padding-top:36px;padding-bottom:90px}.article-page__header{max-width:980px;margin:0 auto 32px}.article-page__header h1{font-size:clamp(40px,5vw,66px);line-height:1.08;letter-spacing:-.035em;margin:20px 0 12px}.article-page__meta{color:var(--muted)}.article-page__image{max-width:1100px;margin:0 auto 36px}.article-page__image img{width:100%;max-height:620px;object-fit:cover;border-radius:24px}.article-page__footer{display:flex;flex-wrap:wrap;gap:12px;max-width:980px;margin:42px auto 0}.error-page{min-height:65vh;display:grid;align-items:center}.error-page .empty-state{max-width:760px;text-align:center}.error-page h1{font-size:clamp(48px,7vw,88px);margin:20px 0}.error-page p{font-size:18px;color:var(--muted)}.error-page .page-hero__actions{justify-content:center}

/* Release 0.7.3 — responsive area selector, unified public forms and cookie notice */
.quick-area--cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.quick-area--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.quick-area--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.quick-area--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.quick-area--cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.quick-area--cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.quick-area--cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}
.quick-area--cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}
.quick-area button{min-width:0;white-space:nowrap;line-height:1.15}
.quick-area button small{display:inline;font-size:.78em;line-height:inherit}

/* One visual contract for every public request/calculator form. */
.cbz-site [data-request-form] label:not(.consent){display:grid;gap:7px;min-width:0;font-size:13px;font-weight:750;color:#6e7c8e}
.cbz-site [data-request-form] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="button"]):not([type="submit"]),
.cbz-site [data-request-form] select,
.cbz-site [data-request-form] textarea{
  display:block;width:100%;max-width:100%;min-width:0;min-height:46px;margin:0;
  border:1px solid #d7e1eb;border-radius:12px;padding:11px 14px;background-color:#fff;color:var(--text);
  line-height:1.45;box-shadow:none;outline:0;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease
}
.cbz-site [data-request-form] textarea{min-height:108px;height:auto;resize:vertical;overflow:auto;white-space:pre-wrap}
.cbz-site [data-request-form] input::placeholder,
.cbz-site [data-request-form] textarea::placeholder{color:#8793a3;opacity:1}
.cbz-site [data-request-form] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="button"]):not([type="submit"]):focus,
.cbz-site [data-request-form] select:focus,
.cbz-site [data-request-form] textarea:focus{border-color:#25b77b;box-shadow:0 0 0 3px rgba(37,183,123,.13);background-color:#fff}
.cbz-site [data-request-form] input:disabled,
.cbz-site [data-request-form] select:disabled,
.cbz-site [data-request-form] textarea:disabled{background:#f4f7fa;color:#7a8796;cursor:not-allowed}
.cbz-site [data-request-form] input[type="file"]{display:block;width:100%;max-width:100%;min-width:0;min-height:50px;border:1px dashed #cbd9e6;border-radius:12px;padding:8px;background:#fff;color:var(--text)}
.cbz-site [data-request-form] .consent{display:flex;align-items:flex-start;gap:9px;min-width:0;font-size:13px;font-weight:400;color:#526174;line-height:1.45}
.cbz-site [data-request-form] .consent input{flex:0 0 18px;width:18px;height:18px;min-height:0;margin:1px 0 0;padding:0;accent-color:#25b874}
.cbz-site [data-request-form] .consent span{min-width:0}
.cbz-site [data-request-form] .consent a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}

.cookie-notice[hidden]{display:none!important}
.cookie-notice{position:fixed;z-index:210;left:50%;bottom:20px;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:calc(100% - 32px);max-width:920px;width:min(920px,calc(100% - 32px));display:flex;align-items:center;gap:18px;padding:16px 18px;border:1px solid #d7e3ee;border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 18px 55px rgba(14,48,88,.20);color:#334155}
.cookie-notice__text{flex:1;min-width:0;margin:0;font-size:14px;line-height:1.45}
.cookie-notice__text a{color:var(--blue);font-weight:750;text-decoration:underline;text-underline-offset:2px}
.cookie-notice__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto}
.cookie-notice__button{flex:0 0 auto;min-height:42px;padding:10px 20px;border:1px solid transparent;border-radius:999px;background:linear-gradient(135deg,#6fc51d,#55a70b);color:#fff;font-weight:850;cursor:pointer}
.cookie-notice__button--secondary{border-color:#cbdbea;background:#fff;color:#0d2144;box-shadow:none}
.cookie-notice__button:hover{transform:translateY(-1px)}
.cookie-notice__button:focus{outline:3px solid rgba(8,116,209,.22);outline-offset:2px}

@media(max-width:860px){
  .quick-area[class*="quick-area--cols-"]{grid-template-columns:repeat(4,minmax(0,1fr))}
  .quick-area button{border-right:1px solid #d8eee5;border-bottom:1px solid #d8eee5}
  .quick-area button:nth-child(4n){border-right:0}
  .quick-area button:nth-last-child(-n+4){border-bottom:0}
  .quick-area button:last-child{grid-column:auto!important;border-right:0}
}
@media(max-width:780px){
  .cbz-site [data-request-form] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="button"]):not([type="submit"]),
  .cbz-site [data-request-form] select{min-height:50px;font-size:15px}
  .cbz-site [data-request-form] textarea{min-height:118px;font-size:15px}
  .cookie-notice{bottom:76px;display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 14px 14px 16px;border-radius:15px}
  .cookie-notice__text{font-size:13px}
  .cookie-notice__actions{justify-content:flex-end}
  .cookie-notice__button{min-height:40px;padding:9px 16px}
}
@media(max-width:430px){
  .quick-area button{font-size:10.5px;padding-left:1px;padding-right:1px}
  .cookie-notice{grid-template-columns:1fr;bottom:72px}
  .cookie-notice__actions{display:grid;grid-template-columns:1fr}
  .cookie-notice__button{width:100%}
}
@media print{.cookie-notice{display:none!important}}

/* Release 0.8.9.2: readable legal documents and combined privacy/cookie policy. */
.legal-document{max-width:980px;color:#26364a;font-size:16px;line-height:1.7}
.legal-document__lead{margin:0 0 14px;padding:22px 24px;border:1px solid #dce8f2;border-radius:18px;background:linear-gradient(135deg,#f3f9ff,#f8fff2);font-size:18px;color:#18324f}
.legal-document__revision{margin:0 0 28px;color:#64748b;font-size:14px}
.legal-document h2{scroll-margin-top:140px;margin:44px 0 16px;font-size:clamp(25px,3vw,34px);line-height:1.2;color:#0d2144}
.legal-document p{margin:0 0 16px}
.legal-document ul,.legal-document ol{margin:0 0 22px;padding-left:24px}
.legal-document li+li{margin-top:8px}
.legal-document a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.legal-document code{padding:2px 6px;border-radius:6px;background:#eef3f8;color:#0d3b66;font-size:.92em;overflow-wrap:anywhere}
.legal-document__toc{margin:24px 0 36px;padding:22px 24px;border:1px solid #dce8f2;border-radius:18px;background:#f8fbff}
.legal-document__toc strong{display:block;margin-bottom:10px;color:#0d2144;font-size:18px}
.legal-document__toc ol{margin:0;columns:2;column-gap:44px}
.legal-document__toc li{break-inside:avoid;margin:0 0 7px}
.legal-table-wrap{max-width:100%;margin:18px 0 26px;overflow-x:auto;border:1px solid #dce6ef;border-radius:16px;background:#fff}
.legal-table{width:100%;min-width:760px;border-collapse:collapse;font-size:14px;line-height:1.5}
.legal-table th,.legal-table td{padding:15px 16px;border-bottom:1px solid #e4ebf2;border-right:1px solid #edf2f6;text-align:left;vertical-align:top}
.legal-table th:last-child,.legal-table td:last-child{border-right:0}
.legal-table tr:last-child td{border-bottom:0}
.legal-table th{background:#f3f8fc;color:#0d2144;font-weight:850}
.legal-table tbody tr:nth-child(even){background:#fbfdff}
@media(max-width:780px){
  .legal-document{font-size:15px;line-height:1.65}
  .legal-document__lead{padding:18px;font-size:16px}
  .legal-document h2{margin-top:36px;font-size:27px}
  .legal-document__toc{padding:18px}
  .legal-document__toc ol{columns:1}
  .legal-table{min-width:680px;font-size:13px}
  .legal-table th,.legal-table td{padding:12px}
}
@media print{
  .legal-document__toc{display:none}
  .legal-table-wrap{overflow:visible;border-color:#bbb}
  .legal-table{min-width:0}
}


/* Release 0.7.4: configured contact labels stay visible without fake links. */
.contact-link--disabled {
    cursor: default;
    opacity: .55;
    text-decoration: none;
    pointer-events: none;
}
.button.contact-link--disabled {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Crew-size output for pricing release 0.7.5 */
.quick-calculator__result{display:grid;gap:4px;min-width:0}.quick-calculator__result .quick-price-pill{width:100%}.quick-calculator__result>small{display:block;text-align:center;color:#496176;font-weight:700}.expanded-order-card__price span{display:block;margin-top:4px;color:#496176;font-size:14px;font-weight:700}.price-cell__value{display:block}.price-cell__cleaners{display:block;margin-top:4px;color:#667085;font-weight:600;white-space:nowrap}.price-table tbody td .price-cell__cleaners{font-size:12px}@media(max-width:720px){.price-cell__cleaners{white-space:normal;text-align:right}}

/* 0.8.0 personnel calculation */
.expanded-order-card__personnel{display:grid;gap:3px;margin-top:7px;color:#496176;font-size:14px;font-weight:700}
.expanded-order-card__personnel>span{display:block}
.expanded-order-card__personnel>small{display:block;margin-top:4px;color:#7a8795;font-size:12px;font-weight:500}
.service-personnel{display:block!important;color:#35536e!important;font-weight:700!important}
[hidden]{display:none!important}


/* 0.8.1 — compact personnel copy and corrected quick-calculator alignment. */
.scope-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(min-width:781px){
  .quick-calculator__action{
    grid-template-columns:minmax(220px,320px) minmax(150px,180px);
    justify-content:space-between;
    align-items:stretch;
  }
  .quick-calculator__action .button{width:100%;max-width:320px}
  .quick-calculator__result{width:180px;justify-self:end}
}
@media(max-width:1250px){
  .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  .quick-calculator__action{display:flex;flex-direction:column;align-items:center}
  .quick-calculator__action .button{width:100%;max-width:none}
  .quick-calculator__result{width:min(100%,280px);margin-inline:auto;justify-items:center;text-align:center}
  .quick-calculator__result>small{text-align:center}
  .quick-calculator__note{width:100%;margin:8px auto 0;text-align:center}
  .scope-grid{grid-template-columns:1fr}
}

/* ========================================================================
   Release 0.8.2 - responsive home-page polish and rebuilt quick calculator
   ======================================================================== */

/* The compact calculator now reads as one small form instead of a large CTA
   next to a detached price badge. */
.quick-calculator--reference{max-width:680px}
.quick-calculator__selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.quick-calculator__field{min-width:0}
.quick-calculator__field select{margin-top:0}
.quick-calculator__summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:11px;padding:11px 12px 11px 15px;border:1px solid #dce8f2;border-radius:16px;background:linear-gradient(120deg,#f8fbff,#fbfff7);box-shadow:0 8px 22px rgba(14,48,88,.045)}
.quick-calculator__estimate{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2px 14px;min-width:0}
.quick-calculator__estimate-label{grid-column:1/-1;color:#7a8796;font-size:11px;font-weight:700;line-height:1.25}
.quick-calculator__price{min-width:0;color:#ef7c4d;font-size:20px;font-weight:900;line-height:1.15;letter-spacing:-.015em;white-space:nowrap}
.quick-calculator__cleaners{color:#274663;font-size:13px;font-weight:800;line-height:1.25;text-align:right;white-space:nowrap}
.quick-calculator__submit{min-width:178px;min-height:44px;padding:10px 20px;border-radius:12px;font-size:14px;white-space:nowrap}
.quick-calculator__note{display:block;max-width:440px;margin:7px 2px 0;color:#7a8796;font-size:11px;line-height:1.4}
.quick-area button:focus-visible,.quick-calculator__field select:focus-visible,.quick-calculator__submit:focus-visible{outline:3px solid rgba(8,116,209,.2);outline-offset:2px}

/* Small visual faults found in the full-page desktop/mobile review. */
.topbar__phone,.topbar__links>*{white-space:nowrap}
.contact-link--disabled{opacity:.72}
.service-card h3,.portfolio-card h3,.team-card h3,.category-band strong,.section-heading h2,.guarantees-content h2,.seo-layout h2,.faq-layout h2,.geography-layout h2{overflow-wrap:normal;word-break:normal;hyphens:none}
.seo-layout{grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);gap:54px}
.seo-layout h2{overflow-wrap:normal;word-break:normal;hyphens:none;font-size:clamp(38px,3.6vw,54px)}
.scope-tabs{scrollbar-width:none;overscroll-behavior-x:contain;scroll-padding-inline:12px}
.scope-tabs::-webkit-scrollbar{display:none}
.service-card__actions{grid-template-columns:auto minmax(112px,1fr)}
.service-card__actions .button{width:100%}

@media(max-width:1250px) and (min-width:1001px){
  .seo-layout{grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);gap:38px}
  .seo-layout h2{font-size:clamp(38px,4.1vw,50px)}
}

@media(max-width:780px){
  .quick-calculator--reference{width:min(100%,520px);margin-inline:auto}
  .quick-calculator__selects{grid-template-columns:1fr;gap:9px;margin-top:10px}
  .quick-calculator__summary{grid-template-columns:1fr;justify-items:center;gap:11px;margin-top:10px;padding:14px 12px;text-align:center}
  .quick-calculator__estimate{grid-template-columns:1fr;justify-items:center;gap:3px;text-align:center}
  .quick-calculator__estimate-label{grid-column:auto}
  .quick-calculator__price{font-size:21px;text-align:center}
  .quick-calculator__cleaners{text-align:center}
  .quick-calculator__submit{width:min(100%,240px);min-width:0;min-height:44px;padding:10px 18px}
  .quick-calculator__note{width:min(100%,360px);margin:7px auto 0;text-align:center}

  .topbar__inner{gap:12px}
  .topbar__links{min-width:0;gap:13px;margin-left:auto}
  .topbar__links>*{font-size:12px}
  .topbar__phone{font-size:12.5px;letter-spacing:-.01em}

  .service-grid--popular .service-card__actions{grid-template-columns:1fr;align-items:stretch;gap:5px}
  .service-grid--popular .service-card__details{justify-self:start;padding-block:4px}
  .service-grid--popular .service-card__actions .button{width:100%}

  .seo-layout h2{font-size:34px;max-width:560px}
}

@media(max-width:620px){
  .topbar__item:first-child{display:none}
  .topbar__links{width:100%;justify-content:flex-end}

  .scope-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;margin-bottom:20px;padding:0}
  .scope-tabs button{width:100%;min-width:0;min-height:44px;padding:9px 10px;line-height:1.25;white-space:normal;text-align:center}
}

@media(max-width:560px){
  .team-card{display:block}
  .team-card>img{width:100%;height:210px;aspect-ratio:auto;object-position:center 28%}
  .team-card>div{padding:18px}
  .team-card h3{font-size:19px}
}

@media(max-width:430px){
  .quick-calculator__summary{border-radius:14px}
  .quick-calculator__price{font-size:20px;white-space:normal}
  .quick-calculator__submit{width:min(100%,220px)}
  .topbar__links{gap:10px}
  .topbar__links>*{font-size:11.5px}
  .topbar__phone{font-size:12px}
  .category-band strong{font-size:16px;line-height:1.24}
}
@media(max-width:1000px){
  .seo-layout{grid-template-columns:1fr;gap:28px}
}

/* ========================================================================
   Hotfix 0.8.2.1 - balanced cleaner count in the desktop quick calculator
   ======================================================================== */
@media(min-width:781px){
  .quick-calculator__estimate{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "label cleaners"
      "price cleaners";
    align-items:center;
    gap:2px 16px;
  }
  .quick-calculator__estimate-label{grid-area:label;grid-column:auto}
  .quick-calculator__price{grid-area:price}
  .quick-calculator__cleaners{
    grid-area:cleaners;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:112px;
    min-height:40px;
    padding:8px 13px;
    border:1px solid #dbe7f1;
    border-radius:12px;
    background:#fff;
    box-shadow:0 4px 12px rgba(14,48,88,.045);
    color:#274663;
    text-align:center;
  }
  .quick-calculator__cleaners:before{
    content:"";
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-radius:50%;
    background:#63b817;
  }
}
@media(min-width:781px) and (max-width:980px){
  .quick-calculator__summary{grid-template-columns:1fr;justify-items:stretch}
  .quick-calculator__submit{justify-self:center;min-width:200px}
}


/* 0.8.2.4: 404 actions and legal footer disclaimer */
.error-page .page-hero__actions .error-page__home{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff}.error-page .page-hero__actions .error-page__home:hover{background:#f3f9ff}.footer-disclaimer{margin-top:32px;padding:14px 18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.045);color:#c9d4e3;font-size:13px;line-height:1.55}.footer-disclaimer p{margin:0;max-width:none}.footer-disclaimer a{color:#fff;font-weight:750;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.footer-disclaimer a:hover{color:#a8e56d}.footer-disclaimer+.footer-bottom{margin-top:18px}@media(max-width:780px){.error-page .page-hero__actions{grid-template-columns:1fr}.error-page .page-hero__actions .button{width:100%}.footer-disclaimer{margin-top:26px;padding:13px 15px;font-size:12px;line-height:1.55}.footer-disclaimer+.footer-bottom{margin-top:16px}}

/* Release 0.8.3.1 — submit state is shown inside the button. */
.button.is-submitting,.button.is-submitted{transform:none;cursor:default}
.button.is-submitting::after{content:"";width:16px;height:16px;flex:0 0 16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:cbz-submit-spin .7s linear infinite}
.button.is-submitted{opacity:.92}
@keyframes cbz-submit-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.button.is-submitting::after{animation-duration:1.4s}}



/* Release 0.8.3.2 — promotional extra prices and price-table clarifications. */
.extra-row__price{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 6px}
.extra-row__price del{color:#98a2b3;font-weight:600}
.extra-row__price [data-extra-current-price]{font-weight:800;color:#526476}
.extra-row.has-promo-price .extra-row__price [data-extra-current-price]{color:#0a8f62}
.extra-row__promo-label{display:inline-flex;padding:2px 7px;border-radius:999px;background:#e8f8f1;color:#087852;font-size:10px;font-style:normal;font-weight:800;white-space:nowrap}
.price-table__head-note{display:block;margin-top:3px;color:rgba(255,255,255,.86);font-size:11px;font-weight:600;line-height:1.25}
.price-table__promo-stack{display:grid;justify-items:start;gap:4px}
.price-table__promo-price{display:block;color:#087852}
.price-table__promo-note{display:block;max-width:260px;color:#667085;font-size:11px;font-weight:600;line-height:1.35;white-space:normal}
@media(max-width:780px){.extra-row__price{justify-content:flex-start}.price-table__promo-stack{margin-left:auto;justify-items:end;text-align:right}}

/* Hotfix 0.8.3.2.1 — restore centered container alignment for the services intro block. */


/* Hotfix 0.8.3.2.3 — mobile contacts and quick actions. */
@media (max-width: 780px) {
  .topbar__inner {
    min-height: 44px;
  }
  .topbar__item {
    display: none !important;
  }
  .topbar__links {
    width: 100%;
    min-width: 0;
    margin-left: 0;
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    align-items: center;
    justify-content: stretch;
    gap: 8px;
  }
  .topbar__links a:not(.topbar__phone),
  .topbar__links .topbar__social {
    display: inline-flex;
  }
  .topbar__social {
    min-height: 30px;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    border: 1px solid #cfe0ee;
    border-radius: 999px;
    background: rgba(255, 255, 255, .72);
    color: #0750a9;
    font-size: 11.5px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
  }
  .topbar__social:focus-visible,
  .topbar__social:hover {
    border-color: #8cbce0;
    background: #fff;
  }
  .topbar__phone {
    min-width: 0;
    justify-self: end;
    font-size: 12.5px;
    line-height: 1.2;
    letter-spacing: -.01em;
    white-space: nowrap;
  }
  .mobile-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 6px;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
  }
  .mobile-actions .mobile-actions__item {
    min-width: 0;
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 5px;
    border: 1px solid #dce7f0;
    border-radius: 12px;
    background: #fff;
    color: var(--blue-dark);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
    white-space: nowrap;
  }
  .mobile-actions .mobile-actions__item--primary {
    border-color: #64b91a;
    background: linear-gradient(135deg, #6fc51d, #55a70b);
    color: #fff;
    box-shadow: 0 6px 15px rgba(92, 177, 20, .18);
  }
  .mobile-actions .mobile-actions__item:focus-visible {
    outline: 3px solid rgba(8, 116, 209, .22);
    outline-offset: 1px;
  }
  body {
    padding-bottom: calc(78px + env(safe-area-inset-bottom));
  }
}
@media (max-width: 360px) {
  .topbar__links {
    gap: 5px;
  }
  .topbar__social {
    min-height: 28px;
    padding-inline: 6px;
    font-size: 10.5px;
  }
  .topbar__phone {
    font-size: 11.5px;
  }
  .mobile-actions {
    gap: 4px;
    padding-inline: 6px;
  }
  .mobile-actions .mobile-actions__item {
    padding-inline: 3px;
    font-size: 12px;
  }
}

/* 0.8.3.2.4: locality tariff data comes from the pricing geography. */
.location-travel small{display:block;color:#667085;font-size:14px;line-height:1.55;margin-top:6px}
.location-card__tariff{display:block;color:#087f5b;font-size:14px;line-height:1.4;margin:0 0 14px}


/* Release 0.8.5.0 — consistent eyebrow and section-heading alignment. */
.section-heading--center p{margin-inline:auto}
.section-heading--center-action{
  display:grid;
  grid-template-columns:minmax(120px,1fr) minmax(0,920px) minmax(120px,1fr);
  align-items:end;
  text-align:center;
}
.section-heading--center-action>div{
  grid-column:2;
  min-width:0;
  width:100%;
}
.section-heading--center-action>div>p{margin-inline:auto}
.section-heading--center-action>.text-link{
  grid-column:3;
  justify-self:end;
  align-self:end;
  margin-bottom:10px;
}
@media(max-width:1000px){
  .section-heading--center-action{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
  }
  .section-heading--center-action>.text-link{
    display:inline-flex;
    justify-self:auto;
    align-self:center;
    margin:12px 0 0;
  }
}

/* Release 0.8.6.1 — client-oriented locality copy and streamlined coverage section. */
.location-profile{
  padding:62px 0;
  background:linear-gradient(135deg,#f4f9ff 0%,#f8fff4 100%);
  border-top:1px solid #e7eff6;
  border-bottom:1px solid #e7eff6;
}
.location-profile__grid{
  display:block;
  max-width:1120px;
  margin-inline:auto;
  text-align:center;
}
.location-profile h2{
  max-width:850px;
  margin:16px auto 10px;
  font-size:clamp(32px,3.3vw,48px);
  line-height:1.1;
  letter-spacing:-.025em;
}
.location-profile p{
  max-width:820px;
  margin:0 auto;
  color:var(--muted);
  font-size:17px;
}
.location-coverage__chips{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:24px;
}
.location-coverage__chips span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 14px;
  border:1px solid #cfe3f1;
  border-radius:999px;
  background:#fff;
  color:#164b76;
  font-size:14px;
  font-weight:750;
  line-height:1.25;
  box-shadow:0 5px 16px rgba(14,48,88,.045);
}
.location-coverage__chips span:before{
  content:"";
  width:7px;
  height:7px;
  margin-right:8px;
  border-radius:50%;
  background:var(--green);
  flex:0 0 7px;
}
.location-landing .landing-content__grid{
  align-items:start;
}
.location-landing .prose h2{
  scroll-margin-top:120px;
}
.location-services .related-grid{
  align-items:stretch;
}
.location-services .related-card{
  height:100%;
}
@media(max-width:1020px){
  .location-profile__grid{
    max-width:820px;
  }
}
@media(max-width:780px){
  .location-profile{
    padding:48px 0;
  }
  .location-profile h2{
    font-size:34px;
  }
  .location-profile p{
    font-size:16px;
  }
  .location-coverage__chips{
    gap:8px;
    margin-top:20px;
  }
  .location-coverage__chips span{
    min-height:36px;
    padding:8px 12px;
    font-size:13px;
  }
}


/* Release 0.8.7.0 — expanded outbound geography; no visual changes. */


/* Release 0.8.7.2 — service-area hub spacing and grid stabilization. */
.service-area-page{
  overflow-x:hidden;
}
.service-area-page .page-hero{
  padding:52px 0 58px;
}
.service-area-page .page-hero h1{
  max-width:1080px;
  margin:18px 0 16px;
  font-size:clamp(44px,4.6vw,64px);
}
.service-area-page .page-hero p{
  max-width:900px;
  margin:0;
}
.service-area-page .page-hero__actions{
  margin-top:24px;
}
.service-area-page .service-area-explainer{
  padding:62px 0 50px;
  background:#fff;
}
.service-area-page .service-area-explainer .section-heading{
  margin-bottom:30px;
}
.service-area-page .area-steps{
  gap:18px;
  align-items:stretch;
}
.service-area-page .area-steps article{
  height:100%;
  padding:24px;
}
.service-area-page .service-area-note{
  margin-top:26px;
}
.service-area-page .service-area-hub{
  padding:62px 0 70px;
}
.service-area-page .service-area-hub .section-heading{
  margin-bottom:36px;
}
.service-area-page .service-area-hub__group-title{
  margin:0 0 18px;
  font-size:20px;
  line-height:1.25;
}
.service-area-page .service-area-hub__group-title+.location-grid{
  margin-bottom:0;
}
.service-area-page .location-grid+.service-area-hub__group-title{
  margin-top:42px;
}
.service-area-page .location-grid{
  gap:18px;
  align-items:stretch;
}
.service-area-page .location-card{
  height:100%;
  padding:24px;
}
.service-area-page .location-card>span{
  display:block;
  min-height:32px;
  line-height:1.35;
}
.service-area-page .location-card h3{
  margin:8px 0 10px;
}
.service-area-page .location-card p{
  margin:0 0 18px;
  line-height:1.55;
}
.service-area-page .location-card__tariff{
  margin:0 0 14px;
}
.service-area-page .location-card .text-link{
  margin-top:0;
  line-height:1.35;
}
.service-area-page .service-area-faq{
  padding:60px 0 52px;
}
.service-area-page .service-area-faq .faq-layout{
  gap:56px;
}
.service-area-page .service-area-faq .faq-layout h2{
  margin-bottom:0;
  font-size:clamp(36px,3.5vw,50px);
}
.service-area-page .service-area-faq .faq-list summary{
  padding:20px 4px;
}
.service-area-page .catalog-cta{
  padding:0 0 72px;
}
.service-area-page .catalog-cta .cta-strip{
  gap:32px;
}
@media(max-width:1050px){
  .service-area-page .page-hero{
    padding:46px 0 50px;
  }
  .service-area-page .service-area-explainer{
    padding:54px 0 44px;
  }
  .service-area-page .service-area-hub{
    padding:56px 0 60px;
  }
  .service-area-page .service-area-faq{
    padding:54px 0 46px;
  }
  .service-area-page .service-area-faq .faq-layout{
    gap:36px;
  }
  .service-area-page .catalog-cta{
    padding-bottom:60px;
  }
}
@media(max-width:780px){
  .service-area-page .page-hero{
    padding:30px 0 42px;
  }
  .service-area-page .page-hero h1{
    margin:16px 0 14px;
    font-size:38px;
  }
  .service-area-page .page-hero p{
    font-size:16px;
  }
  .service-area-page .page-hero__actions{
    margin-top:20px;
  }
  .service-area-page .service-area-explainer{
    padding:44px 0 38px;
  }
  .service-area-page .service-area-explainer .section-heading,
  .service-area-page .service-area-hub .section-heading{
    margin-bottom:26px;
  }
  .service-area-page .area-steps{
    gap:12px;
  }
  .service-area-page .area-steps article{
    padding:20px;
  }
  .service-area-page .service-area-note{
    margin-top:18px;
  }
  .service-area-page .service-area-hub{
    padding:46px 0 52px;
  }
  .service-area-page .service-area-hub__group-title{
    margin-bottom:14px;
    font-size:18px;
  }
  .service-area-page .location-grid{
    gap:12px;
  }
  .service-area-page .location-card{
    padding:20px;
  }
  .service-area-page .location-card>span{
    min-height:0;
  }
  .service-area-page .location-card h3{
    margin-top:7px;
  }
  .service-area-page .service-area-faq{
    padding:46px 0 38px;
  }
  .service-area-page .service-area-faq .faq-layout{
    gap:24px;
  }
  .service-area-page .service-area-faq .faq-layout h2{
    font-size:34px;
  }
  .service-area-page .service-area-faq .faq-list summary{
    padding:17px 2px;
  }
  .service-area-page .catalog-cta{
    padding:0 0 48px;
  }
  .service-area-page .catalog-cta .cta-strip{
    gap:18px;
  }
}
@media(max-width:430px){
  .service-area-page .page-hero h1{
    font-size:34px;
  }
  .service-area-page .service-area-note strong{
    font-size:20px;
  }
  .service-area-page .location-card h3{
    font-size:22px;
  }
  .service-area-page .catalog-cta h2{
    font-size:28px;
  }
}


/* Release 0.8.7.3 — global inner-page rhythm, FAQ and CTA contract. */
.page-hero{
  padding:52px 0 54px;
}
.page-hero h1{
  max-width:1080px;
  margin:18px 0 16px;
  font-size:clamp(44px,4.6vw,64px);
}
.page-hero p{
  max-width:900px;
  margin:0;
}
.page-hero__actions{
  margin-top:24px;
}

.faq-section{
  padding:60px 0 52px;
}
.faq-layout{
  gap:56px;
}
.faq-layout h2{
  margin:18px 0 0;
  font-size:clamp(36px,3.5vw,50px);
}
.faq-list summary{
  padding:20px 4px;
}

.catalog-cta{
  padding:0 0 72px;
}
.catalog-cta .cta-strip{
  gap:32px;
}

@media(max-width:1050px){
  .page-hero{
    padding:46px 0 50px;
  }
  .faq-section{
    padding:54px 0 46px;
  }
  .faq-layout{
    gap:36px;
  }
  .catalog-cta{
    padding-bottom:60px;
  }
}

@media(max-width:780px){
  .page-hero{
    padding:30px 0 42px;
  }
  .page-hero h1{
    margin:16px 0 14px;
    font-size:38px;
  }
  .work-single-hero h1{
    font-size:34px;
  }
  .page-hero p{
    font-size:16px;
  }
  .page-hero__actions{
    margin-top:20px;
  }
  .faq-section{
    padding:46px 0 38px;
  }
  .faq-layout{
    gap:24px;
  }
  .faq-layout h2{
    font-size:34px;
  }
  .faq-list summary{
    padding:17px 2px;
  }
  .catalog-cta{
    padding:0 0 48px;
  }
  .catalog-cta .cta-strip{
    gap:18px;
  }
}

@media(max-width:430px){
  .page-hero h1{
    font-size:34px;
  }
  .catalog-cta h2{
    font-size:28px;
  }
}

/* Release 0.8.8.0 — photo uploads in quick requests and callback forms. */
.photo-upload-field{
  display:grid!important;
  gap:7px!important;
  min-width:0;
  margin:2px 0;
  color:#536276;
  font-size:13px;
  font-weight:750;
}
.photo-upload-field__title{
  display:block;
  color:var(--text);
}
.photo-upload-field input[type=file]{
  width:100%;
  min-height:50px;
  padding:7px 9px!important;
  border:1px dashed #9fc1df!important;
  border-radius:12px!important;
  background:#f8fbff;
  color:#526174;
  line-height:1.35;
  cursor:pointer;
}
.photo-upload-field input[type=file]::file-selector-button{
  min-height:34px;
  margin-right:10px;
  padding:8px 12px;
  border:0;
  border-radius:9px;
  background:#e7f3ff;
  color:#0874d1;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.photo-upload-field input[type=file]::-webkit-file-upload-button{
  min-height:34px;
  margin-right:10px;
  padding:8px 12px;
  border:0;
  border-radius:9px;
  background:#e7f3ff;
  color:#0874d1;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.photo-upload-field__hint,
.photo-upload-field__summary{
  display:block;
  font-size:11px;
  font-weight:500;
  line-height:1.4;
}
.photo-upload-field__hint{color:#7b8797}
.photo-upload-field__summary{color:#0874d1}
.modal__dialog .photo-upload-field,
.callback-card .photo-upload-field{
  margin-top:1px;
}
.expanded-order-card .photo-upload-field{
  margin-top:11px;
}
@media(max-width:780px){
  .photo-upload-field input[type=file]{
    min-height:48px;
    font-size:12px;
  }
  .photo-upload-field input[type=file]::file-selector-button,
  .photo-upload-field input[type=file]::-webkit-file-upload-button{
    margin-right:7px;
    padding:8px 10px;
  }
}


/* Release 0.8.8.1 — service-format comparison and descriptive catalog links. */
.service-format-comparison{padding-top:44px;padding-bottom:40px;background:linear-gradient(180deg,#f7fbff,#fff)}
.service-format-comparison .section-heading{margin-bottom:26px}
.service-format-table-wrap{overflow:hidden;border:1px solid #d9e6f0;border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(14,48,88,.06)}
.service-format-table{width:100%;border-collapse:collapse;table-layout:fixed}
.service-format-table thead{background:linear-gradient(90deg,#0e92d0,#1aad81);color:#fff}
.service-format-table th,.service-format-table td{padding:16px 18px;border-bottom:1px solid #e7eef4;text-align:left;vertical-align:middle}
.service-format-table thead th{font-size:14px;line-height:1.3;font-weight:850}
.service-format-table thead th:nth-child(1){width:18%}
.service-format-table thead th:nth-child(2){width:30%}
.service-format-table thead th:nth-child(3){width:14%}
.service-format-table thead th:nth-child(4){width:21%}
.service-format-table thead th:nth-child(5){width:17%}
.service-format-table tbody tr:last-child th,.service-format-table tbody tr:last-child td{border-bottom:0}
.service-format-table tbody tr:nth-child(even){background:#fbfdff}
.service-format-table tbody th{font-size:16px;font-weight:850}
.service-format-table tbody th a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}
.service-format-table tbody th a:hover,.service-format-table tbody th a:focus{text-decoration:underline}
.service-format-table tbody td{color:#46556a;font-size:15px;line-height:1.45}
.service-format-table tbody td strong{color:#087c5a;font-size:16px;white-space:nowrap}
.service-format-comparison__note{max-width:1080px;margin:18px auto 0;color:var(--muted);font-size:14px;line-height:1.55;text-align:center}
.service-grid--catalog .service-card__actions{grid-template-columns:1fr;align-items:stretch;gap:8px}
.service-grid--catalog .service-card__details{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border:1px solid #cfe0ed;border-radius:10px;background:#f8fbff;color:var(--blue);font-size:13px;font-weight:850;line-height:1.3;text-align:center;white-space:normal}
.service-grid--catalog .service-card__details:hover,.service-grid--catalog .service-card__details:focus{border-color:#7dbbe8;background:#eef7ff}
.service-grid--catalog .service-card__actions .button{min-height:44px}

@media(max-width:900px){
  .service-format-table th,.service-format-table td{padding:14px 13px}
  .service-format-table thead th,.service-format-table tbody td{font-size:13px}
  .service-format-table tbody th,.service-format-table tbody td strong{font-size:14px}
}

@media(max-width:780px){
  .service-format-comparison{padding-top:30px;padding-bottom:30px}
  .service-format-comparison .section-heading{margin-bottom:20px}
  .service-format-table-wrap{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
  .service-format-table{display:block;table-layout:auto}
  .service-format-table thead{display:none}
  .service-format-table tbody{display:grid;gap:12px}
  .service-format-table tr{display:block;overflow:hidden;border:1px solid #dce8f2;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(14,48,88,.05)}
  .service-format-table tbody tr:nth-child(even){background:#fff}
  .service-format-table tbody th,.service-format-table tbody td{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:9px 15px;border:0;font-size:14px;text-align:right}
  .service-format-table tbody th{padding-top:14px;padding-bottom:11px;background:#f3f9ff;font-size:17px;text-align:left}
  .service-format-table tbody td:last-child{padding-bottom:14px}
  .service-format-table tbody th:before,.service-format-table tbody td:before{content:attr(data-label);flex:0 0 42%;color:#667085;font-size:12px;font-weight:700;line-height:1.35;text-align:left}
  .service-format-table tbody th:before{display:none}
  .service-format-table tbody th a{width:100%}
  .service-format-table tbody td strong{white-space:normal;text-align:right}
  .service-format-comparison__note{margin-top:15px;text-align:left}
}

/* 0.8.9.0: proof section on service landing pages. Only real non-demo work posts render here. */
.service-proof{background:#f7fbff}
.service-proof-grid .portfolio-card{grid-template-columns:1fr}
.service-proof-grid .portfolio-card .before-after{border-radius:0}
.service-proof-grid .portfolio-card__body{padding:22px}
.service-proof-grid .portfolio-card h3{margin:0 0 14px;font-size:21px;line-height:1.28}
.service-proof-grid .portfolio-card ul{margin-bottom:18px}
@media(max-width:900px){.service-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.service-proof-grid{grid-template-columns:1fr}.service-proof-grid .portfolio-card__body{padding:20px}}

/* Release 0.8.9.1 — server-rendered price overview, examples and range factors. */
.prices-page .prices-overview{padding-top:36px}
.price-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.price-summary-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #dce8f2;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,48,88,.05)}
.price-summary-card h3{margin:0 0 10px;font-size:21px;line-height:1.25}
.price-summary-card h3 a{color:var(--text);text-decoration:none}
.price-summary-card h3 a:hover{color:var(--blue)}
.price-summary-card p{margin:0 0 20px;color:var(--muted)}
.price-summary-card__meta{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:auto;padding-top:16px;border-top:1px solid #e7eef4}
.price-summary-card__meta strong{color:#087f5b;font-size:23px;line-height:1.1}
.price-summary-card__meta span{color:#64748b;font-size:13px;font-weight:700;text-align:right}
.price-examples-section{padding-top:28px}
.price-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.price-example-card{position:relative;min-width:0;padding:26px;border:1px solid #dce8f2;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fbfe);box-shadow:0 12px 30px rgba(14,48,88,.055)}
.price-example-card__number{display:grid;place-items:center;width:42px;height:42px;margin-bottom:18px;border-radius:13px;background:linear-gradient(135deg,#0e9cc7,#20bd78);color:#fff;font-weight:900}
.price-example-card h3{margin:0 0 16px;font-size:22px;line-height:1.25}
.price-example-card dl{display:grid;gap:8px;margin:0 0 18px}
.price-example-card dl>div{display:flex;justify-content:space-between;gap:18px;padding-bottom:8px;border-bottom:1px solid #e5edf4}
.price-example-card dt{color:#64748b}
.price-example-card dd{margin:0;font-weight:750;text-align:right}
.price-example-card__price{display:block;margin:0 0 10px;color:#087f5b;font-size:27px;line-height:1.15}
.price-example-card p{margin:0;color:var(--muted);font-size:14px}
.prices-page .full-price-section{padding-top:38px}
.price-range-factor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.price-range-factor-grid article{min-width:0;padding:23px;border:1px solid #dce7f1;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,48,88,.045)}
.price-range-factor-grid article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#0e9cc7,#20bd78);color:#fff;font-weight:900}
.price-range-factor-grid h3{margin:16px 0 8px;font-size:20px;line-height:1.25}
.price-range-factor-grid p{margin:0;color:var(--muted)}
.price-range-factor-grid article:last-child{grid-column:span 2}
.prices-page .legal-note{margin-top:14px}
@media(max-width:1100px){.price-summary-grid,.price-range-factor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-range-factor-grid article:last-child{grid-column:auto}}
@media(max-width:820px){.price-example-grid{grid-template-columns:1fr}.price-example-card{padding:22px}}
@media(max-width:620px){.price-summary-grid,.price-range-factor-grid{grid-template-columns:1fr}.price-summary-card{padding:21px}.price-summary-card__meta{align-items:flex-start;flex-direction:column}.price-summary-card__meta span{text-align:left}.price-example-card__price{font-size:24px}.prices-page .full-price-section{padding-top:28px}}

/* Release 0.8.9.4 — compact FAQ directory, balanced cards and accessible accordions. */
.faq-directory-page .page-hero p{
  max-width:1000px;
}
.faq-topic-navigation{
  padding:4px 0 28px;
}
.faq-topic-navigation .section-heading{
  margin-bottom:20px;
}
.faq-topic-navigation .section-heading p{
  max-width:800px;
  margin-inline:auto;
}
.faq-topic-links{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:9px;
  max-width:1180px;
  margin-inline:auto;
}
.faq-topic-links a{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-width:0;
  min-height:48px;
  padding:10px 12px 10px 15px;
  border:1px solid #d7e6f0;
  border-radius:14px;
  background:#fff;
  color:var(--blue);
  font-size:13px;
  font-weight:800;
  line-height:1.25;
  text-decoration:none;
  box-shadow:0 7px 20px rgba(14,48,88,.035);
  transition:border-color .2s,box-shadow .2s,transform .2s,background-color .2s;
}
.faq-topic-links a>span{
  min-width:0;
  overflow-wrap:break-word;
}
.faq-topic-links__count{
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border-radius:9px;
  background:#eef8f4;
  color:#087f5b;
  font-size:12px;
  font-weight:900;
}
.faq-topic-links a:hover,
.faq-topic-links a:focus-visible{
  border-color:#20aa76;
  background:#fbfffd;
  box-shadow:0 10px 24px rgba(32,170,118,.11);
  transform:translateY(-1px);
}
.faq-topic-links a:focus-visible{
  outline:3px solid rgba(32,170,118,.22);
  outline-offset:2px;
}
.faq-directory{
  padding:26px 0 66px;
}
.faq-directory__groups{
  display:grid;
  gap:16px;
  max-width:1180px;
}
.faq-topic-group{
  scroll-margin-top:116px;
  padding:0 24px;
  border:1px solid #dce7f1;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 30px rgba(14,48,88,.04);
}
.faq-topic-group__header{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:20px 0 17px;
  border-bottom:1px solid #e5edf4;
}
.faq-topic-group__number{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:13px;
  background:linear-gradient(135deg,#0e9cc7,#20bd78);
  color:#fff;
  font-size:13px;
  font-weight:900;
  letter-spacing:.02em;
}
.faq-topic-group__header h2{
  min-width:0;
  margin:0;
  font-size:clamp(22px,2vw,28px);
  line-height:1.18;
  overflow-wrap:break-word;
}
.faq-topic-group__count{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  border-radius:999px;
  background:#f1f6fa;
  color:#66768a;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.faq-topic-group .faq-list{
  min-width:0;
  border-top:0;
}
.faq-topic-group .faq-list details:last-child{
  border-bottom:0;
}
.faq-topic-group .faq-list summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  min-width:0;
  padding:18px 0;
  color:var(--text);
  font-size:16px;
  font-weight:800;
  line-height:1.42;
}
.faq-topic-group .faq-list summary:hover{
  color:var(--blue);
}
.faq-topic-group .faq-list summary:focus-visible{
  outline:3px solid rgba(16,134,211,.2);
  outline-offset:4px;
  border-radius:6px;
}
.faq-question-text{
  min-width:0;
  overflow-wrap:break-word;
}
.faq-question-icon{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#eef8f4;
  color:#11986c;
  font-size:21px;
  font-weight:700;
  line-height:1;
  transition:transform .2s,background-color .2s,color .2s;
}
.faq-topic-group .faq-list details[open] .faq-question-icon{
  transform:rotate(45deg);
  background:#e8f5ff;
  color:var(--blue);
}
.faq-topic-group .faq-list details>div{
  padding:0 48px 18px 0;
  color:var(--muted);
}
.faq-topic-group .faq-list details>div p{
  max-width:980px;
  margin:0;
  font-size:15px;
  line-height:1.65;
}
@media(max-width:980px){
  .faq-topic-links{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .faq-topic-navigation{
    padding:0 0 20px;
  }
  .faq-topic-navigation .section-heading{
    margin-bottom:16px;
  }
  .faq-topic-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
  .faq-topic-links a{
    min-height:44px;
    padding:9px 9px 9px 11px;
    border-radius:12px;
    font-size:12px;
  }
  .faq-topic-links__count{
    width:23px;
    height:23px;
    border-radius:8px;
    font-size:11px;
  }
  .faq-directory{
    padding:20px 0 48px;
  }
  .faq-directory__groups{
    gap:12px;
  }
  .faq-topic-group{
    padding:0 16px;
    border-radius:17px;
  }
  .faq-topic-group__header{
    grid-template-columns:auto minmax(0,1fr);
    gap:11px;
    padding:16px 0 14px;
  }
  .faq-topic-group__number{
    width:36px;
    height:36px;
    border-radius:11px;
    font-size:12px;
  }
  .faq-topic-group__header h2{
    font-size:21px;
  }
  .faq-topic-group__count{
    grid-column:2;
    justify-self:start;
    min-height:0;
    margin-top:-5px;
    padding:0;
    background:transparent;
    font-size:11px;
  }
  .faq-topic-group .faq-list summary{
    gap:12px;
    padding:16px 0;
    font-size:14px;
    line-height:1.4;
  }
  .faq-question-icon{
    width:28px;
    height:28px;
    font-size:19px;
  }
  .faq-topic-group .faq-list details>div{
    padding:0 38px 16px 0;
  }
  .faq-topic-group .faq-list details>div p{
    font-size:14px;
    line-height:1.6;
  }
}
@media(max-width:330px){
  .faq-topic-links{
    grid-template-columns:1fr;
  }
}


/* Release 0.8.9.5 — mobile action parity and complete responsive company page. */
@media(max-width:780px){
  .mobile-actions .mobile-actions__item--primary{
    border-color:#dce7f0;
    background:#fff;
    color:var(--blue-dark);
    box-shadow:none;
  }
  .mobile-actions .mobile-actions__item--primary:hover,
  .mobile-actions .mobile-actions__item--primary:active{background:#f4f9fd}
}

.about-page{overflow:clip}
.about-page__hero{background:radial-gradient(circle at 86% 18%,rgba(111,197,29,.10),transparent 26%),linear-gradient(180deg,#f5faff 0,#fff 100%)}
.about-page__hero p{max-width:920px}
.about-director{padding-top:68px}
.about-director__grid{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:clamp(44px,7vw,110px);align-items:center}
.about-director__portrait{position:relative;isolation:isolate;display:grid;place-items:center;min-height:520px}
.about-director__portrait:before{content:"";position:absolute;z-index:-2;width:min(92%,520px);aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#eaf7ff 0,#effbe2 100%);box-shadow:0 32px 80px rgba(14,48,88,.13)}
.about-director__portrait:after{display:none;}
.about-director__portrait picture{width:min(100%,520px);aspect-ratio:1;border-radius:50%;overflow:hidden}
.about-director__portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 28px rgba(13,33,68,.14))}
.about-director__content h2{max-width:720px;margin:18px 0;font-size:clamp(36px,4.2vw,58px);line-height:1.08;letter-spacing:-.035em}
.about-director__content>p{max-width:780px;color:#4f5d70;font-size:17px}
.about-director blockquote{position:relative;margin:28px 0;padding:30px 34px;border:1px solid #dce8f2;border-radius:24px;background:linear-gradient(145deg,#fff,#f7fbff);box-shadow:0 20px 50px rgba(14,48,88,.07)}
.about-director blockquote:before{content:"“";position:absolute;right:24px;top:2px;color:rgba(32,170,118,.16);font-family:Georgia,serif;font-size:110px;line-height:1}
.about-director blockquote p{position:relative;margin:0 0 20px;color:#0d2144;font-size:clamp(21px,2.1vw,29px);font-weight:720;line-height:1.45}
.about-director blockquote footer{display:grid;gap:4px}
.about-director blockquote footer strong{font-size:17px}
.about-director blockquote footer span{color:var(--muted);font-size:14px}
.about-numbers{background:linear-gradient(180deg,#f8fbff,#f5fbf6)}
.about-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.about-stats article{min-width:0;padding:30px;border:1px solid #dce8f2;border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 14px 38px rgba(14,48,88,.055);text-align:center}
.about-stats strong{display:inline;color:var(--blue);font-size:clamp(42px,5vw,68px);line-height:1;font-weight:900;letter-spacing:-.045em}
.about-stats__suffix{margin-left:7px;color:#168b64;font-size:20px;font-weight:850}
.about-stats p{max-width:240px;margin:12px auto 0;color:#526174;font-weight:700;line-height:1.4}
.about-standard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.about-standard-grid article{position:relative;min-width:0;padding:30px 26px 26px;border:1px solid #dce8f2;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(14,48,88,.055)}
.about-standard-grid article>span{display:grid;place-items:center;width:38px;height:38px;margin-bottom:20px;border-radius:12px;background:#e9f8d8;color:#4ba70b;font-weight:900}
.about-standard-grid h3{margin:0 0 10px;font-size:22px}
.about-standard-grid p{margin:0;color:var(--muted)}
.about-selection--soft,.about-equipment--soft,.about-company-links--soft{background:#f7fbff}
.about-selection__layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(40px,6vw,90px);align-items:start}
.about-selection__layout h2{margin:18px 0;font-size:clamp(36px,4vw,54px);line-height:1.1;letter-spacing:-.03em}
.about-selection__layout>div>p{color:var(--muted);font-size:17px}
.about-selection__steps{counter-reset:about-step;display:grid;gap:12px;margin:0;padding:0;list-style:none}
.about-selection__steps li{counter-increment:about-step;display:grid;grid-template-columns:52px 180px minmax(0,1fr);gap:18px;align-items:center;padding:20px 22px;border:1px solid #dce8f2;border-radius:18px;background:#fff}
.about-selection__steps li:before{content:counter(about-step,decimal-leading-zero);display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#e7f3ff;color:#0874d1;font-weight:900}
.about-selection__steps strong{font-size:17px}
.about-selection__steps span{color:var(--muted)}
.about-team__grid .team-card{height:100%}
.about-equipment__grid{margin-bottom:24px}
.about-chemistry-note{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:26px;padding:28px;border:1px solid #cfe3d8;border-radius:22px;background:linear-gradient(135deg,#f4fff7,#f6fbff)}
.about-chemistry-note h3{margin:0 0 10px;font-size:23px}
.about-chemistry-note p{margin:0;color:#4f5d70}
.about-chemistry-note>p{padding-left:26px;border-left:1px solid #cfe3d8}
.about-documents__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.about-documents__grid article{min-width:0;padding:26px;border:1px solid #dce8f2;border-radius:20px;background:#fff}
.about-documents__grid article>span{display:block;color:#20aa76;font-weight:900}
.about-documents__grid h3{margin:10px 0 8px;font-size:21px}
.about-documents__grid p{margin:0;color:var(--muted)}
.about-document-samples{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:26px 30px;border:1px solid #dce8f2;border-radius:20px;background:linear-gradient(110deg,#eef7ff,#f8fff0)}
.about-document-samples h3{margin:0 0 6px;font-size:24px}
.about-document-samples p{margin:0;color:var(--muted)}
.about-company-links .prose h2{font-size:clamp(36px,4vw,52px)}
.about-company-links__buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.about-company-links .company-details a{color:var(--blue);font-weight:750}
.about-faq .faq-question-text{color:inherit;font-size:inherit;transform:none}
.about-cta{padding-top:0}

@media(max-width:1100px){
  .about-director__grid{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:48px}
  .about-director__portrait{min-height:430px}
  .about-stats,.about-standard-grid,.about-documents__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-selection__steps li{grid-template-columns:52px minmax(150px,.55fr) minmax(0,1fr)}
}
@media(max-width:780px){
  .about-page{overflow:visible}
  .about-director{padding-top:34px}
  .about-director__grid,.about-selection__layout,.about-chemistry-note{grid-template-columns:1fr}
  .about-director__portrait{min-height:0;margin-bottom:10px}
  .about-director__portrait:before{width:min(94vw,430px)}
  .about-director__portrait:after{width:min(78vw,350px);transform:translate(22px,-15px)}
  .about-director__portrait picture{width:min(92vw,430px)}
  .about-director__content{text-align:left}
  .about-director__content h2{font-size:36px}
  .about-director blockquote{padding:24px 22px}
  .about-director blockquote:before{right:12px;font-size:84px}
  .about-director blockquote p{font-size:21px}
  .about-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .about-stats article{padding:22px 14px}
  .about-stats strong{font-size:42px}
  .about-stats__suffix{display:block;margin:6px 0 0;font-size:16px}
  .about-stats p{font-size:14px}
  .about-standard-grid,.about-documents__grid{grid-template-columns:1fr;gap:12px}
  .about-selection__steps li{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:17px}
  .about-selection__steps span{grid-column:2}
  .about-chemistry-note>p{padding:20px 0 0;border-left:0;border-top:1px solid #cfe3d8}
  .about-document-samples{display:grid;padding:22px}
  .about-document-samples .button{width:100%}
  .about-company-links__buttons{display:grid}
  .about-company-links__buttons .button{width:100%}
}
@media(max-width:420px){
  .about-stats{grid-template-columns:1fr 1fr}
  .about-stats strong{font-size:36px}
  .about-director__content h2,.about-selection__layout h2{font-size:32px}
}


/* Release 0.8.10.0 — responsive apartment-cleaning hub. */
.apartment-cleaning-page{overflow:clip}
.apartment-hero{background:radial-gradient(circle at 88% 20%,rgba(98,181,22,.11),transparent 29%),linear-gradient(180deg,#f4f9ff 0,#fff 100%);padding:58px 0 64px}
.apartment-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:clamp(44px,6vw,88px);align-items:center}
.apartment-hero__content{min-width:0}
.apartment-hero h1{max-width:790px;margin:18px 0 16px;font-size:clamp(46px,5.2vw,72px);line-height:1.04;letter-spacing:-.04em}
.apartment-hero__content>p{max-width:790px;margin:0;color:#526174;font-size:18px;line-height:1.62}
.apartment-hero .page-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.apartment-hero__facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:30px 0 0;padding:0}
.apartment-hero__facts div{min-width:0;padding:16px;border:1px solid #dce8f2;border-radius:16px;background:rgba(255,255,255,.84)}
.apartment-hero__facts dt{color:var(--muted);font-size:12px;font-weight:700}
.apartment-hero__facts dd{margin:5px 0 0;color:#0d2144;font-weight:850;line-height:1.3}
.apartment-hero__image{position:relative;min-height:540px;overflow:hidden;border:1px solid #d7e7ef;border-radius:34px 150px 34px 150px;background:#eaf7ff;box-shadow:0 26px 70px rgba(14,48,88,.13)}
.apartment-hero__image:after{content:"";position:absolute;right:-70px;bottom:-82px;width:230px;height:230px;border-radius:50%;background:linear-gradient(135deg,#8fd934,#55a80e);opacity:.86}
.apartment-hero__image img{width:100%;height:100%;min-height:540px;object-fit:cover;object-position:center}
.apartment-section-nav{position:sticky;top:0;z-index:35;border-block:1px solid #e2ebf3;background:rgba(255,255,255,.94);backdrop-filter:blur(12px)}
.admin-bar .apartment-section-nav{top:32px}
.apartment-section-nav__inner{display:flex;gap:8px;overflow-x:auto;padding-block:10px;scrollbar-width:thin}
.apartment-section-nav a{flex:0 0 auto;padding:9px 13px;border-radius:999px;color:#31506f;font-size:13px;font-weight:800;white-space:nowrap}
.apartment-section-nav a:hover,.apartment-section-nav a:focus{background:#eaf5ff;color:var(--blue)}
.apartment-formats{background:#fff}
.apartment-format-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.apartment-format-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #dce8f2;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(14,48,88,.06)}
.apartment-format-card__image{display:block;overflow:hidden}
.apartment-format-card__image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .25s ease}
.apartment-format-card:hover .apartment-format-card__image img{transform:scale(1.025)}
.apartment-format-card__body{display:flex;min-height:310px;flex:1;flex-direction:column;padding:22px}
.apartment-format-card__body>span{color:#20a875;font-size:12px;font-weight:900;letter-spacing:.08em}
.apartment-format-card h3{margin:10px 0 9px;font-size:22px;line-height:1.24}
.apartment-format-card p{margin:0 0 16px;color:var(--muted);font-size:14px;line-height:1.55}
.apartment-format-card__meta{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid #e7eef4}
.apartment-format-card__meta strong{color:var(--blue);font-size:20px}
.apartment-format-card__meta small{color:#526174;text-align:right}
.apartment-format-card .text-link{margin-top:14px;font-size:14px}
.apartment-prices{background:#f7fbff}
.apartment-price-table-wrap,.apartment-comparison-table-wrap{max-width:100%;overflow:auto;border:1px solid #dbe7f0;border-radius:20px;background:#fff;box-shadow:0 14px 36px rgba(14,48,88,.055)}
.apartment-price-table,.apartment-comparison-table{width:100%;min-width:980px;border-collapse:collapse}
.apartment-price-table thead,.apartment-comparison-table thead{background:linear-gradient(90deg,#0d8fce,#20aa76);color:#fff}
.apartment-price-table th,.apartment-price-table td,.apartment-comparison-table th,.apartment-comparison-table td{padding:17px 18px;border-bottom:1px solid #e7eef4;text-align:left;vertical-align:middle}
.apartment-price-table tbody tr:last-child>* ,.apartment-comparison-table tbody tr:last-child>*{border-bottom:0}
.apartment-price-table tbody th{min-width:170px}
.apartment-price-table tbody th strong,.apartment-price-table tbody th small{display:block}
.apartment-price-table tbody th small{margin-top:3px;color:var(--muted);font-weight:500}
.apartment-price-table tbody td strong,.apartment-comparison-table tbody td strong{color:#108566;white-space:nowrap}
.apartment-price-table a,.apartment-comparison-table a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.48);text-underline-offset:4px}
.apartment-comparison-table tbody a{text-decoration-color:#a8c9e5}
.apartment-price-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;margin-top:18px;padding:22px 24px;border:1px solid #d7e7ef;border-radius:18px;background:#fff}
.apartment-price-note strong{font-size:18px}
.apartment-price-note p{margin:0;color:var(--muted)}
.apartment-price-note a{color:var(--blue);font-weight:850;white-space:nowrap}
.apartment-comparison{background:#fff}
.apartment-scope{background:linear-gradient(180deg,#f8fbff,#fff)}
.apartment-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.apartment-scope-grid article{min-width:0;padding:26px;border:1px solid #dce8f2;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(14,48,88,.045)}
.apartment-scope-grid article>span,.apartment-factor-grid article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#eaf7dc;color:#4ba70b;font-weight:900}
.apartment-scope-grid h3,.apartment-factor-grid h3{margin:18px 0 12px;font-size:21px}
.apartment-scope-grid ul{margin:0;padding-left:20px;color:#526174}
.apartment-scope-grid li+li{margin-top:8px}
.apartment-scope-extra{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:18px;padding:24px 28px;border:1px solid #cfe3d8;border-radius:20px;background:linear-gradient(110deg,#f2fff6,#f3f9ff)}
.apartment-scope-extra h3{margin:0 0 6px;font-size:22px}
.apartment-scope-extra p{margin:0;color:var(--muted)}
.apartment-factors{background:#fff}
.apartment-factor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.apartment-factor-grid article{min-width:0;padding:24px;border:1px solid #dce8f2;border-radius:18px;background:#fff}
.apartment-factor-grid h3{font-size:18px}
.apartment-factor-grid p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.apartment-works,.apartment-reviews{background:#f7fbff}
.apartment-work-grid .portfolio-card,.apartment-review-grid .review-card{height:100%}
.apartment-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.apartment-faq{background:#fff}
.apartment-related{background:#f7fbff}
.apartment-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.apartment-related-grid>a{display:flex;min-width:0;min-height:235px;flex-direction:column;padding:26px;border:1px solid #dce8f2;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(14,48,88,.045);transition:transform .2s ease,box-shadow .2s ease}
.apartment-related-grid>a:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(14,48,88,.09)}
.apartment-related-grid span{color:#20a875;font-size:12px;font-weight:900;text-transform:uppercase}
.apartment-related-grid h3{margin:12px 0 9px;font-size:22px}
.apartment-related-grid p{margin:0 0 18px;color:var(--muted)}
.apartment-related-grid strong{margin-top:auto;color:var(--blue)}
.apartment-cta{padding-top:0}
.service-category__hub-link{display:inline-block;margin-top:14px}
@media(max-width:1100px){
  .apartment-hero__grid{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:38px}
  .apartment-hero__facts,.apartment-format-grid,.apartment-factor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .apartment-hero__image,.apartment-hero__image img{min-height:480px}
  .apartment-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .apartment-review-grid article:last-child:nth-child(odd){grid-column:1/-1}
}
@media(max-width:782px){.admin-bar .apartment-section-nav{top:46px}}
@media(max-width:780px){
  .apartment-cleaning-page{overflow:visible}
  .apartment-hero{padding:34px 0 44px}
  .apartment-hero__grid{display:flex;flex-direction:column;gap:26px}
  .apartment-hero h1{font-size:clamp(38px,11vw,48px);margin:16px 0 14px}
  .apartment-hero__content>p{font-size:16px}
  .apartment-hero .page-hero__actions{display:grid;grid-template-columns:1fr;margin-top:22px}
  .apartment-hero .page-hero__actions .button{width:100%}
  .apartment-hero__facts{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}
  .apartment-hero__facts div{padding:14px 12px}
  .apartment-hero__image{order:-1;width:100%;min-height:330px;border-radius:24px 86px 24px 86px}
  .apartment-hero__image img{min-height:330px;max-height:430px}
  .apartment-section-nav{position:relative;top:auto}
  .admin-bar .apartment-section-nav{top:auto}
  .apartment-format-grid,.apartment-scope-grid,.apartment-factor-grid,.apartment-review-grid,.apartment-related-grid{grid-template-columns:1fr}
  .apartment-format-card{display:grid;grid-template-columns:38% minmax(0,1fr)}
  .apartment-format-card__image,.apartment-format-card__image img{height:100%}
  .apartment-format-card__image img{aspect-ratio:auto}
  .apartment-format-card__body{min-height:240px;padding:18px}
  .apartment-price-table-wrap,.apartment-comparison-table-wrap{overflow:visible;border:0;box-shadow:none;background:transparent}
  .apartment-price-table,.apartment-comparison-table{display:block;min-width:0}
  .apartment-price-table thead,.apartment-comparison-table thead{display:none}
  .apartment-price-table tbody,.apartment-comparison-table tbody{display:grid;gap:12px}
  .apartment-price-table tr,.apartment-comparison-table tr{display:block;overflow:hidden;border:1px solid #dce8f2;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(14,48,88,.05)}
  .apartment-price-table tbody th,.apartment-comparison-table tbody th{display:block;padding:15px 16px 10px;border:0;font-size:18px}
  .apartment-price-table tbody td,.apartment-comparison-table tbody td{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:8px 16px;border:0;text-align:right}
  .apartment-price-table tbody td:before,.apartment-comparison-table tbody td:before,.apartment-comparison-table tbody th:before{content:attr(data-label);color:var(--muted);font-size:13px;font-weight:700;text-align:left}
  .apartment-comparison-table tbody th{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;text-align:right}
  .apartment-price-table tbody td:last-child,.apartment-comparison-table tbody td:last-child{padding-bottom:15px}
  .apartment-price-note{grid-template-columns:1fr;gap:8px;padding:20px}
  .apartment-price-note a{white-space:normal}
  .apartment-scope-extra{display:grid;padding:22px}
  .apartment-scope-extra .button{width:100%}
  .apartment-review-grid article:last-child:nth-child(odd){grid-column:auto}
}
@media(max-width:480px){
  .apartment-hero__facts{grid-template-columns:1fr 1fr;gap:8px}
  .apartment-hero__facts dd{font-size:14px}
  .apartment-format-card{display:block}
  .apartment-format-card__image img{height:210px}
  .apartment-format-card__body{min-height:0}
  .apartment-format-card__meta{align-items:start;flex-direction:column}
  .apartment-format-card__meta small{text-align:left}
}
