:root{--bg:#fff;--ink:#272727;--muted:#6a6a6a;--line:#e4e4e4;--soft:#f4f4f4;--accent:#b7202e;--accent-dark:#8f1722;--nav:#2a2a2a;--nav2:#1e1e1e;--paper:#fff;--shadow:0 8px 24px rgba(0,0,0,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:min(1180px,calc(100% - 36px));margin:auto}.narrow{width:min(860px,100%)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px;border:2px solid var(--accent)}
.site-header{position:relative;z-index:100;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08)}.header-main{background:#fff}.header-main-row{min-height:112px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:14px;min-width:360px}.header-contacts{margin-left:auto;display:grid;gap:2px;text-align:right}.header-region{font-size:12px;color:#777}.phone{font-size:22px;font-weight:800;color:#222}.header-email{font-size:13px;color:var(--accent);text-decoration:underline}.header-calc{min-width:190px;border-left:1px solid var(--line);padding-left:22px;color:var(--accent);font-weight:800;line-height:1.15}.header-calc span,.header-calc small{display:block}.header-calc small{font-size:11px;color:#777;font-weight:400;margin-top:5px}.menu-toggle{display:none;border:0;background:transparent;padding:7px;cursor:pointer}.menu-toggle span{display:block;width:26px;height:2px;background:#222;margin:5px}.menu-toggle b{font-size:11px}.nav-bar{background:var(--nav)}.nav-row{display:flex;align-items:center}.site-nav{flex:1}.menu{display:flex;align-items:stretch;list-style:none;margin:0;padding:0}.menu>li{position:relative}.menu>li>a{display:flex;align-items:center;min-height:52px;padding:0 17px;color:#fff;text-transform:uppercase;font-size:13px;font-weight:700;border-right:1px solid rgba(255,255,255,.08)}.menu>li:first-child>a{border-left:1px solid rgba(255,255,255,.08)}.menu>li:hover>a,.menu>.current-menu-item>a,.menu>.current-menu-ancestor>a{background:var(--accent)}.menu-item-has-children>a:after{content:"▾";margin-left:7px;font-size:9px}.sub-menu{position:absolute;top:100%;left:0;min-width:240px;margin:0;padding:7px 0;list-style:none;background:var(--nav2);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s;z-index:30}.menu li:hover>.sub-menu,.menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.sub-menu li{position:relative}.sub-menu a{display:block;padding:10px 16px;color:#f3f3f3;font-size:13px;border-bottom:1px solid rgba(255,255,255,.06)}.sub-menu a:hover{background:var(--accent)}.sub-menu .sub-menu{top:0;left:100%}.nav-phone{display:none;color:#fff;background:var(--accent);padding:16px 20px;font-weight:800}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;background:var(--accent);border:2px solid var(--accent);color:#fff;font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.02em;transition:.2s}.btn:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-ghost{background:#fff;color:#333;border-color:#cacaca}.btn-ghost:hover{color:#fff}.btn-light{background:#fff;color:var(--accent);border-color:#fff}.btn-block{width:100%}.text-link{color:var(--accent);font-weight:800}.text-link:hover{text-decoration:underline}.eyebrow{margin:0 0 10px;color:var(--accent);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.home-hero,.service-hero{background:linear-gradient(90deg,#efefef 0,#f7f7f7 48%,#fff 48%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:520px;align-items:stretch}.hero-copy{padding:68px 52px 58px 0;display:flex;flex-direction:column;justify-content:center}.hero-copy h1,.page-hero h1{font-size:clamp(38px,4.9vw,64px);line-height:1.04;letter-spacing:-.035em;margin:0 0 20px;text-transform:uppercase}.hero-lead{font-size:19px;color:#555;max-width:650px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;border-top:1px solid #d3d3d3;padding-top:18px}.hero-trust span{font-size:12px;color:#666}.hero-trust b{display:block;color:#222;font-size:22px}.source-note{font-size:10px;color:#8a8a8a;margin:9px 0 0}.hero-media{min-height:520px;background:#ddd;overflow:hidden}.hero-media img{width:100%;height:100%;min-height:520px;object-fit:cover}.hero-placeholder{height:100%;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;background:linear-gradient(135deg,#3a3a3a,#171717);color:#fff}.hero-placeholder-mark{width:110px;height:110px;background:var(--accent);display:grid;place-items:center;font-size:44px;font-weight:900;margin-bottom:20px}.hero-placeholder strong{font-size:28px;text-transform:uppercase}.hero-placeholder span{max-width:360px;color:#d1d1d1;margin-top:10px;font-size:13px}.price-badge{display:inline-flex;align-self:flex-start;background:var(--accent);color:#fff;padding:10px 16px;font-weight:900;margin-top:10px}.breadcrumbs{font-size:12px;color:#777;margin-bottom:14px}.breadcrumbs a{color:var(--accent)}
.section{padding:68px 0}.section-compact{padding:0}.section-alt{background:var(--soft)}.catalog-section{background:#fff}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.section h2,.section-head h2{font-size:clamp(29px,3.6vw,44px);line-height:1.1;margin:0 0 14px}.section-title-centered{text-align:center;max-width:760px;margin:0 auto 34px}.section-title-centered>span{display:block;color:var(--accent);font-size:12px;letter-spacing:.15em;font-weight:900;margin-bottom:8px}.section-title-centered h2{margin-bottom:10px;text-transform:uppercase}.section-title-centered p{color:var(--muted)}.section-more{text-align:center;margin-top:28px}
.legacy-benefits{background:var(--accent);color:#fff}.legacy-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr)}.legacy-benefit-grid>div{min-height:125px;padding:26px 20px;border-right:1px solid rgba(255,255,255,.20);display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:12px;align-content:center}.legacy-benefit-grid>div:first-child{border-left:1px solid rgba(255,255,255,.20)}.legacy-benefit-grid i{grid-row:1/3;width:42px;height:42px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:20px}.legacy-benefit-grid strong{font-size:15px;text-transform:uppercase}.legacy-benefit-grid span{font-size:12px;color:#ffe7ea}
.service-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card,.project-card{position:relative;display:block;min-height:300px;background:#292929;overflow:hidden;border:1px solid #ddd;box-shadow:0 3px 10px rgba(0,0,0,.08)}.service-card img,.project-card img,.service-card .card-placeholder,.project-card .card-placeholder{width:100%;height:300px;object-fit:cover;transition:transform .35s,filter .35s}.card-placeholder{background:linear-gradient(135deg,#c8c8c8,#ededed)}.service-card:after,.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.88));transition:.25s}.service-card:hover img,.project-card:hover img{transform:scale(1.04);filter:saturate(.88)}.card-body{position:absolute;z-index:2;left:0;right:0;bottom:0;color:#fff;padding:24px}.card-body h3{margin:0 0 6px;font-size:24px;line-height:1.08}.card-body p{margin:0;color:#ddd;font-size:13px}.card-price{display:inline-block;margin-top:9px;background:var(--accent);padding:5px 9px;font-size:12px;font-weight:900}.card-more{display:block;margin-top:11px;font-size:12px;font-weight:900;text-transform:uppercase;color:#fff}.project-card .card-body h3{font-size:20px}
.legacy-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:3px solid var(--accent)}.legacy-steps li{position:relative;padding:27px 25px 22px;border-right:1px solid #ddd;background:#fff}.legacy-steps li:first-child{border-left:1px solid #ddd}.legacy-steps b{display:block;color:var(--accent);font-size:36px;line-height:1;margin-bottom:14px}.legacy-steps strong{display:block;text-transform:uppercase;margin-bottom:6px}.legacy-steps span{font-size:13px;color:#666}.about-strip{background:#252525;color:#fff}.about-strip-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:start}.about-strip h2{color:#fff;text-transform:uppercase}.about-strip p{color:#ddd;font-size:17px}.about-strip .text-link{color:#fff;text-decoration:underline}
.category-children{background:#fff}.subservice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.subservice-card{height:260px;position:relative;overflow:hidden;background:#333}.subservice-card img,.subservice-card .card-placeholder{width:100%;height:100%;object-fit:cover;transition:.3s}.subservice-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.85))}.subservice-card:hover img{transform:scale(1.04)}.subservice-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:20px;color:#fff;display:grid;gap:4px}.subservice-overlay strong{font-size:20px}.subservice-overlay em{font-style:normal;color:#ffd7dc}.subservice-overlay b{font-size:12px;text-transform:uppercase;margin-top:5px}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.benefit-card{background:#fff;border-top:3px solid var(--accent);padding:22px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.benefit-card p{margin:8px 0 0}.check{width:34px;height:34px;display:grid;place-items:center;background:var(--accent);color:#fff;border-radius:50%;font-weight:900}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:46px}.entry-content{font-size:17px}.entry-content h2{margin-top:38px;font-size:30px}.entry-content h3{font-size:22px;margin-top:28px}.entry-content p,.entry-content li{color:#454545}.entry-content a{color:var(--accent);text-decoration:underline}.sticky-card{position:sticky;top:22px;align-self:start;border:1px solid #ddd;border-top:4px solid var(--accent);background:#fff;padding:25px;box-shadow:var(--shadow)}.sticky-card h2{font-size:25px}.aside-price{background:#f4f4f4;padding:10px}.aside-link{display:block;color:var(--accent);font-weight:800;margin-top:16px}.related-links{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.related-links a{display:flex;justify-content:space-between;gap:12px;padding:15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:800}.related-links a:hover{background:var(--accent);color:#fff}.faq-list details{background:#fff;border:1px solid #ddd;border-left:4px solid var(--accent);margin:10px 0;padding:0 18px}.faq-list summary{cursor:pointer;padding:17px 0;font-weight:800}.faq-list p{color:#555;margin:0 0 18px}.request-section{background:#ececec;border-top:1px solid #ddd}.request-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:start}.request-wrap h2{font-size:40px}.request-contact{font-size:20px;font-weight:800}.td-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;background:#fff;padding:26px;border-top:4px solid var(--accent);box-shadow:var(--shadow)}.td-form label{display:grid;gap:6px;font-weight:700}.td-form label:has(textarea),.td-form .consent,.td-form button,.td-form-status{grid-column:1/-1}.td-form input,.td-form textarea{width:100%;padding:12px;border:1px solid #c9c9c9;background:#fff}.td-form textarea{min-height:100px}.td-form .consent{display:flex;align-items:flex-start;gap:8px;font-size:12px;font-weight:400}.td-form .consent input{width:auto;margin-top:4px}.td-form-status{font-size:13px}.page-hero{background:#efefef;border-bottom:1px solid #ddd;padding:48px 0}.page-hero h1{font-size:clamp(34px,4vw,50px)}.content-card{background:#fff;border:1px solid #ddd;border-top:4px solid var(--accent);padding:26px}.project-hero-image img{width:100%;max-height:620px;object-fit:cover}.catalog-groups{display:grid;gap:30px}.catalog-group{border-top:3px solid var(--accent);background:#fff}.catalog-group-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid var(--line);border-top:0}.catalog-group-head h2{font-size:26px;margin:0}.catalog-child-links{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line)}.catalog-child-links a{padding:13px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:700}.catalog-child-links a:hover{background:#f5f5f5;color:var(--accent)}
.site-footer{background:#202020;color:#ccc}.footer-callout{background:var(--accent);color:#fff}.footer-callout-row{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-callout strong{display:block;font-size:24px;text-transform:uppercase}.footer-callout span{font-size:13px;color:#ffe7ea}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:38px;padding-top:48px;padding-bottom:38px}.footer-grid strong{color:#fff;text-transform:uppercase;font-size:14px}.footer-brand{display:block;font-size:25px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:12px}.footer-links{list-style:none;margin:12px 0 0;padding:0}.footer-links li{margin:7px 0}.footer-links a:hover,.site-footer a:hover{color:#fff;text-decoration:underline}.footer-phone{font-size:19px;font-weight:900;color:#fff}.footer-text-link{color:#fff}.footer-bottom{border-top:1px solid #3a3a3a;padding:18px 0 22px;display:flex;gap:22px;justify-content:space-between;font-size:11px;color:#8f8f8f}
@media(max-width:1060px){.header-main-row{min-height:94px}.brand{min-width:0;flex:1}.header-calc{display:none}.menu>li>a{padding:0 11px;font-size:12px}.hero-copy{padding-right:30px}.legacy-benefit-grid>div{padding:22px 14px}.service-grid,.subservice-grid{grid-template-columns:repeat(2,1fr)}.related-links{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.header-main-row{min-height:82px}.header-contacts{display:none}.menu-toggle{display:block}.nav-bar{background:#fff}.nav-row{display:block}.site-nav{display:none}.site-nav.is-open{display:block}.menu{display:block}.menu>li>a{min-height:46px;color:#222;border-bottom:1px solid #eee;text-transform:none;font-size:14px}.menu>li:hover>a,.menu>.current-menu-item>a,.menu>.current-menu-ancestor>a{background:#f4f4f4;color:var(--accent)}.sub-menu,.sub-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;display:none;background:#f5f5f5;padding:0}.menu li.submenu-open>.sub-menu{display:block}.sub-menu a{color:#333;border-bottom:1px solid #e1e1e1;padding-left:30px}.sub-menu .sub-menu a{padding-left:48px}.menu-item-has-children>a{padding-right:48px;position:relative}.menu-item-has-children>a:after{position:absolute;right:18px}.nav-phone{display:block;text-align:center}.hero-grid{grid-template-columns:1fr}.home-hero,.service-hero{background:#efefef}.hero-copy{padding:45px 0}.hero-media{min-height:360px;order:-1}.hero-media img,.hero-placeholder{min-height:360px}.legacy-benefit-grid{grid-template-columns:repeat(2,1fr)}.legacy-benefit-grid>div:nth-child(3){border-left:1px solid rgba(255,255,255,.2)}.legacy-steps{grid-template-columns:repeat(2,1fr)}.content-grid,.request-wrap,.about-strip-grid{grid-template-columns:1fr}.sticky-card{position:static}.benefit-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.td-form{grid-template-columns:1fr}.td-form label,.td-form label:has(textarea),.td-form .consent,.td-form button,.td-form-status{grid-column:1}.catalog-child-links{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.container{width:min(100% - 24px,1180px)}.hero-copy h1,.page-hero h1{font-size:34px}.hero-media{min-height:275px}.hero-media img,.hero-placeholder{min-height:275px}.hero-placeholder-mark{width:76px;height:76px;font-size:30px}.hero-trust{grid-template-columns:1fr 1fr}.legacy-benefit-grid{grid-template-columns:1fr}.legacy-benefit-grid>div,.legacy-benefit-grid>div:nth-child(3){border-left:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.section{padding:50px 0}.service-grid,.project-grid,.subservice-grid,.benefit-grid{grid-template-columns:1fr}.service-card,.project-card{min-height:265px}.service-card img,.project-card img,.service-card .card-placeholder,.project-card .card-placeholder{height:265px}.legacy-steps{grid-template-columns:1fr}.related-links{grid-template-columns:1fr}.catalog-child-links{grid-template-columns:1fr}.footer-callout-row{padding:18px 0;align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.hero-actions .btn{width:100%}.section-head{align-items:flex-start;flex-direction:column}.td-form{padding:20px}.request-wrap h2{font-size:32px}}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{margin:0;background:#fff;border:1px solid #ddd;border-top:4px solid var(--accent);padding:26px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.review-quote{display:block;color:var(--accent);font:bold 48px/1 Georgia,serif}.review-card .entry-content{font-size:15px}.review-card footer{border-top:1px solid #eee;margin-top:18px;padding-top:13px}.review-card small{color:#777}.page-next-links h2{font-size:28px}@media(max-width:860px){.review-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.review-grid{grid-template-columns:1fr}}

/* v2.4 richer content and reference galleries */
.section-intro{max-width:760px;color:var(--muted);margin:8px 0 0}.td-reference-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.td-gallery-item{display:block;aspect-ratio:4/3;overflow:hidden;background:#eee;border:1px solid #ddd}.td-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease,filter .28s ease}.td-gallery-item:hover img{transform:scale(1.045);filter:saturate(1.05)}.td-info-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 28px}.td-info-cards>div{border:1px solid var(--line);border-top:3px solid var(--accent);padding:18px;background:#fff}.td-info-cards h3{margin:0 0 8px;font-size:19px}.td-info-cards p{margin:0}.td-rich-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;padding-left:20px}.td-steps-list{counter-reset:step;list-style:none;padding:0;display:grid;gap:10px}.td-steps-list li{counter-increment:step;padding:14px 16px 14px 54px;border:1px solid var(--line);position:relative;background:#fff}.td-steps-list li:before{content:counter(step);position:absolute;left:14px;top:11px;width:28px;height:28px;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900}.td-gallery-section{border-top:1px solid #eee;border-bottom:1px solid #eee}@media(max-width:860px){.td-reference-gallery{grid-template-columns:repeat(2,1fr)}.td-info-cards,.td-rich-list{grid-template-columns:1fr}}@media(max-width:580px){.td-reference-gallery{grid-template-columns:1fr 1fr;gap:8px}.td-gallery-item{aspect-ratio:1/1}.td-info-cards{grid-template-columns:1fr}}


/* v2.5 — presentation layer; existing content and component contracts stay intact. */
:root{--bg:#fcfbf8;--ink:#262825;--muted:#656961;--line:#dedfd7;--soft:#f1f1eb;--accent:#b7202e;--accent-dark:#921925;--nav:#252c28;--nav2:#1d231f;--shadow:0 16px 48px #2630240d;--radius:16px;--header-offset:150px}
html{scroll-padding-top:calc(var(--header-offset) + 24px)}
body{font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
::selection{background:#b7202e;color:#fff}
:focus-visible{outline:3px solid #bb2434;outline-offset:5px}
.nav-bar :focus-visible,.site-footer :focus-visible{outline-color:#ffd2ab}
[id]{scroll-margin-top:calc(var(--header-offset) + 24px)}
.container{width:min(1280px,calc(100% - 80px))}
.narrow{width:min(860px,calc(100% - 80px))}
.site-header{position:sticky;top:0;box-shadow:0 1px 0 #26302415;z-index:100}
.admin-bar .site-header{top:32px}
.header-main-row{min-height:96px;gap:24px}
.brand{gap:13px;min-width:0}



.header-region{color:var(--muted)}
.phone{font-size:21px;font-weight:650;letter-spacing:-.035em}
.header-calc{font-weight:650;min-width:185px;font-size:14px}
.header-calc:hover span{text-decoration:underline;text-underline-offset:4px}
.header-email{color:var(--accent-dark);text-underline-offset:3px}
.nav-bar{background:var(--nav)}
.menu>li>a{min-height:50px;text-transform:none;font-size:14px;font-weight:500;padding:0 23px;border:0;transition:background-color .2s,color .2s}
.menu>li:first-child>a{border:0}
.sub-menu{border-radius:0 0 10px 10px;padding:8px;min-width:244px}
.sub-menu a{border:0;border-radius:5px;font-size:14px;padding:11px 14px}
.sub-menu .sub-menu{border-radius:10px}
.menu-toggle{min-width:48px;min-height:48px;border-radius:8px}
.menu-toggle span{transition:transform .24s,opacity .2s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.submenu-toggle{display:none}
.btn{border-radius:7px;min-height:52px;padding:12px 24px;text-transform:none;font-size:14px;font-weight:650;letter-spacing:0;transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #b7202e24}
.btn-ghost{background:transparent;border-color:#c3c8bd;color:var(--ink)}
.btn-ghost:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.text-link{font-weight:600;text-underline-offset:5px}
.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;display:flex;gap:10px;align-items:center}
.eyebrow:before{content:"";width:22px;height:1px;background:currentColor;flex:none}
.home-hero,.service-hero{background:var(--bg);border:0;padding:38px 0 48px}
.hero-grid{grid-template-columns:1fr 1fr;gap:48px;min-height:540px;align-items:center}
.hero-copy{padding:20px 0;min-width:0}
.hero-copy h1,.page-hero h1{font-family:Georgia,"Times New Roman",serif;text-transform:none;font-weight:400;letter-spacing:-.045em;font-size:clamp(42px,4.6vw,68px);line-height:1.06;margin:14px 0 24px;text-wrap:balance;overflow-wrap:break-word}
.hero-copy h1 em{font-weight:400;color:var(--accent);font-style:italic}
.hero-lead{font-size:17px;line-height:1.7;color:#60665d;margin:0;max-width:540px}
.hero-actions{gap:12px;margin:28px 0}
.hero-trust{gap:16px;margin:6px 0 0;padding-top:22px;border-color:var(--line);grid-template-columns:repeat(3,minmax(0,1fr))}
.hero-trust b{font-size:15px;font-weight:650;margin-bottom:3px;letter-spacing:-.01em}
.hero-trust span{font-size:11px;color:var(--muted)}
.hero-media{position:relative;width:100%;height:540px;min-height:0;border-radius:80px 16px 16px 16px;background:#e3e5dc;isolation:isolate}
.hero-media img{width:100%;height:100%;min-height:0;object-fit:cover}
.hero-media:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#1d231f80);pointer-events:none}
.hero-caption{position:absolute;bottom:26px;left:28px;right:28px;z-index:1;color:#fff;font-size:13px;letter-spacing:.02em;display:flex;justify-content:space-between;gap:16px;align-items:center}
.hero-caption b{width:40px;height:40px;border:1px solid #ffffff65;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:400}
.hero-placeholder{min-height:0;height:100%;background:linear-gradient(140deg,#444e43,#242c25)}
.hero-placeholder-mark{border-radius:20px}
.service-hero .hero-media{height:480px}
.service-hero .hero-copy h1{font-size:clamp(38px,4.2vw,60px)}
.breadcrumbs{font-size:12px;line-height:1.7;color:var(--muted)}
.price-badge{border-radius:5px;background:#f4e6e4;color:var(--accent-dark);font-size:16px;padding:7px 13px;font-weight:650}
.legacy-benefits{background:var(--bg);color:var(--ink)}
.legacy-benefit-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.legacy-benefit-grid>div,.legacy-benefit-grid>div:first-child{border:0;border-right:1px solid var(--line);padding:28px 20px;min-height:118px;grid-template-columns:32px 1fr;column-gap:12px}
.legacy-benefit-grid>div:last-child{border-right:0}
.legacy-benefit-grid i{border:0;background:#f2e5e2;color:var(--accent);width:32px;height:32px;font-size:17px}
.legacy-benefit-grid strong{font-size:13px;text-transform:none;font-weight:650;line-height:1.5}
.legacy-benefit-grid span{color:var(--muted);font-size:11px;margin-top:3px}
.section{padding:88px 0}
.section h2,.section-head h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(32px,3.3vw,46px);line-height:1.12;letter-spacing:-.035em;text-wrap:balance}
.section-title-centered{text-align:left;max-width:none;margin:0 0 36px}
.section-title-centered h2{text-transform:none}
.section-title-centered>span{font-size:11px;font-weight:700;letter-spacing:.16em}
.section-title-centered p{max-width:630px;margin:12px 0 0}
.section-head{margin-bottom:32px}
.section-head h2{margin-bottom:0}
.catalog-section{background:var(--bg)}
.service-grid,.project-grid,.subservice-grid{gap:24px}
.service-card,.project-card{border:0;border-radius:var(--radius);box-shadow:none;min-height:320px;transition:box-shadow .3s,transform .3s}
.service-card img,.project-card img,.service-card .card-placeholder,.project-card .card-placeholder{height:320px;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.service-card:after,.project-card:after{background:linear-gradient(180deg,#111a1010 10%,#121b1480 50%,#121b14f0 100%)}
.card-body{padding:26px}
.card-body h3{font-size:25px;line-height:1.2;letter-spacing:-.025em;font-weight:600;margin-bottom:9px}
.card-body p{color:#f0f2ed;font-size:13px;line-height:1.5}
.card-price{font-size:12px;font-weight:600;border-radius:4px;background:#fff;color:var(--ink);padding:4px 9px}
.card-more{font-size:11px;letter-spacing:.06em;font-weight:600;text-transform:none;margin-top:12px}
.service-card:focus-visible,.project-card:focus-visible,.td-gallery-item:focus-visible,.subservice-card:focus-visible{outline-offset:5px}
.section-more{text-align:left;margin-top:30px}
.legacy-steps{gap:24px;border:0;counter-reset:none}
.legacy-steps li,.legacy-steps li:first-child{background:transparent;border:0;border-top:1px solid #c7cdbf;padding:24px 0 0}
.legacy-steps b{font:400 46px/1 Georgia,serif;letter-spacing:-.05em;margin-bottom:26px}
.legacy-steps strong{text-transform:none;font-size:17px;font-weight:600}
.legacy-steps span{display:block;font-size:14px;line-height:1.65;color:var(--muted);max-width:250px}
.about-strip{background:#29362e;position:relative;border-radius:32px 32px 0 0}
.about-strip h2{text-transform:none}
.about-strip .eyebrow{color:#eed6bb;font-size:11px}
.about-strip p{font-size:18px;line-height:1.8;color:#e2e7df}
.about-strip-grid{grid-template-columns:.8fr 1.2fr;gap:60px}
.subservice-card{border-radius:var(--radius);height:280px}
.subservice-overlay{padding:24px}
.subservice-overlay strong{font-size:22px;font-weight:600;line-height:1.25}
.benefit-card,.content-card,.review-card,.td-info-cards>div{border:1px solid var(--line);border-radius:12px;box-shadow:none;padding:26px}
.check{width:30px;height:30px;background:#f4e6e4;color:var(--accent)}
.content-grid{gap:64px;grid-template-columns:minmax(0,1fr) 320px}
.entry-content{font-size:17px;line-height:1.85;min-width:0;overflow-wrap:anywhere}
.entry-content h2{font-size:32px;margin:46px 0 20px}
.entry-content h3{font-size:21px;font-weight:600;letter-spacing:-.025em;line-height:1.3}
.entry-content p,.entry-content li{color:#50564d}
.entry-content li{margin-bottom:7px}
.sticky-card{top:calc(var(--header-offset) + 24px);border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:var(--shadow)}
.sticky-card h2{font-size:29px}
.aside-price{border-radius:6px;background:var(--soft)}
.related-links{gap:12px;border:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.related-links a{border:1px solid var(--line);border-radius:8px;padding:18px;font-weight:500;font-size:14px;transition:background-color .2s,color .2s}
.faq-list details{border:0;border-bottom:1px solid #d3d7cc;background:transparent;border-radius:0;margin:0;padding:0}
.faq-list summary{padding:23px 28px 23px 0;font-size:17px;font-weight:600}
.faq-list details[open] summary{color:var(--accent-dark)}
.faq-list p{padding:0 24px 22px 0;margin:0;font-size:16px;line-height:1.8}
.request-section{background:#eeeae1;border:0}
.request-wrap{gap:72px}
.request-wrap h2{font-size:clamp(36px,4vw,52px)}
.request-contact{font-size:24px;letter-spacing:-.025em;font-weight:500;line-height:1.8}
.request-contact a:last-child{font-size:17px}
.td-form{border:1px solid #dfded5;border-radius:16px;box-shadow:var(--shadow);padding:32px;gap:18px}
.td-form label{font-size:13px;font-weight:600;gap:8px}
.td-form input,.td-form textarea{border-radius:6px;border-color:#bec5b7;min-height:48px;font-size:16px;padding:12px;transition:border-color .2s,box-shadow .2s}
.td-form input:focus,.td-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b7202e10}
.td-form .consent{font-size:12px;line-height:1.6;color:#565e52}
.td-form .consent input{min-height:20px;min-width:20px;accent-color:var(--accent);flex-shrink:0;margin-top:0}
.td-form .consent a{text-decoration:underline;text-underline-offset:3px}
.page-hero{padding:54px 0;background:var(--soft);border:0}
.page-hero h1{font-size:clamp(38px,4.5vw,62px)}
.catalog-groups{gap:28px}
.catalog-group{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.catalog-group-head{border:0;padding:22px 24px}
.catalog-child-links{border:0}
.catalog-child-links a{font-weight:500;font-size:14px}
.td-reference-gallery{gap:16px}
.td-gallery-item{border:0;border-radius:12px;background:#e4e7de}
.td-gallery-item img{transition:transform .5s}
.td-gallery-section{border-color:var(--line);background:#f4f4ee}
.td-info-cards h3{font-family:"Segoe UI",Arial,sans-serif;font-size:20px}
.td-steps-list li{border-radius:8px;padding:18px 18px 18px 60px}
.td-steps-list li:before{top:18px;border-radius:50%;font-size:13px}
.footer-callout{background:var(--accent-dark)}
.footer-callout-row{min-height:128px}
.footer-callout strong{font-size:25px;letter-spacing:-.025em;font-weight:600;text-transform:none}
.site-footer{background:#212a24;color:#ccd3c9}
.footer-grid{padding-top:60px;padding-bottom:50px}
.footer-brand{font-size:25px;font-weight:600;letter-spacing:-.025em;text-transform:none}
.footer-grid strong{text-transform:none;font-size:15px;font-weight:600}
.footer-grid p,.footer-links{font-size:14px}
.footer-links li{margin:10px 0}
.footer-bottom{color:#b2bdac;border-color:#465043;font-size:12px}
/* The default is fully visible: JS adds motion only to off-screen items. */
@media(hover:hover) and (pointer:fine){.service-card:hover,.project-card:hover{box-shadow:0 16px 30px #26302426;transform:translateY(-4px)}.td-gallery-item:hover img{transform:scale(1.035)}}
@media(min-width:861px){.menu .submenu-open>.sub-menu{opacity:1;visibility:visible;transform:none}.menu .submenu-closed>.sub-menu{opacity:0;visibility:hidden}.menu-item-has-children>a{padding-right:44px}.menu-item-has-children>a:after{display:none}.submenu-toggle{display:grid;place-items:center;position:absolute;right:6px;top:5px;width:36px;height:40px;color:#fff;background:transparent;border:0;border-radius:4px;cursor:pointer;font-size:17px}.submenu-toggle:hover{background:#ffffff20}.sub-menu .submenu-toggle{top:3px}.menu>.menu-item-has-children>.submenu-toggle{top:5px}}
@media(max-width:1100px){.container{width:calc(100% - 48px)}.menu>li>a{padding-left:15px;padding-right:15px;font-size:13px}.menu>.menu-item-has-children>a{padding-right:44px}.hero-grid{gap:30px}.hero-media{height:500px}.hero-copy h1{font-size:54px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-body{padding:20px}.card-body h3{font-size:22px}.legacy-benefit-grid>div{padding:24px 12px}.content-grid{gap:30px;grid-template-columns:minmax(0,1fr) 290px}.request-wrap{gap:36px}}
@media(max-width:860px){:root{--header-offset:82px}.container,.narrow{width:calc(100% - 40px)}.header-main-row{min-height:80px}.nav-row{width:100%}.nav-phone{display:none}.nav-bar{background:#fff}.site-nav{max-height:calc(100dvh - var(--header-offset));overflow-y:auto;overscroll-behavior:contain}.site-nav.is-open{display:block;animation:menu-in .22s ease}.menu{padding:8px 20px 24px}.menu>li>a{font-size:16px;min-height:52px;border-bottom:1px solid var(--line);padding-left:4px}.menu-item-has-children{position:relative}.menu-item-has-children>a:after{display:none}.submenu-toggle{position:absolute;display:grid;place-items:center;right:0;top:3px;width:46px;height:46px;border:0;border-radius:6px;background:var(--soft);color:var(--ink);font-size:20px;cursor:pointer}.submenu-toggle[aria-expanded="true"]{background:#f4e6e4;color:var(--accent)}.sub-menu,.sub-menu .sub-menu{padding:0;background:#f6f6f1;border-radius:6px}.sub-menu a{font-size:15px;min-height:48px;padding:12px 54px 12px 16px}.sub-menu .sub-menu a{padding-left:28px}.sub-menu a:hover{background:#ecefe5;color:var(--ink)}.hero-grid{grid-template-columns:1fr 1fr;gap:26px;min-height:0}.hero-copy h1{font-size:44px}.hero-lead{font-size:15px}.hero-media,.service-hero .hero-media{height:450px;order:0;border-top-left-radius:54px}.hero-media img,.hero-placeholder{min-height:0}.hero-actions{margin:22px 0}.hero-actions .btn{padding:11px 16px;font-size:13px}.hero-trust{grid-template-columns:1fr;gap:8px;padding-top:16px}.hero-trust span{display:flex;gap:6px;align-items:baseline}.hero-trust b{font-size:13px}.hero-caption{left:20px;right:20px;bottom:20px;font-size:11px}.hero-caption b{display:none}.legacy-benefit-grid>div,.legacy-benefit-grid>div:nth-child(3){border:0;padding:24px 18px;min-height:100px}.legacy-benefit-grid>div:nth-child(odd){border-right:1px solid var(--line)}.legacy-benefit-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.section{padding:64px 0}.service-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-steps{gap:30px}.content-grid,.request-wrap,.about-strip-grid{grid-template-columns:1fr;gap:32px}.sticky-card{position:static}.related-links{grid-template-columns:repeat(2,minmax(0,1fr))}.td-form{padding:26px}.about-strip{border-radius:24px 24px 0 0}.footer-grid{gap:28px}.footer-bottom{gap:16px}.td-info-cards{grid-template-columns:1fr}}
@keyframes menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:600px){.container,.narrow{width:calc(100% - 36px)}.header-main-row{gap:12px;min-height:76px}.home-hero,.service-hero{padding:24px 0 32px}.hero-grid{grid-template-columns:1fr;gap:24px}.hero-copy{padding:8px 0 0}.hero-copy h1{font-size:clamp(40px,10vw,56px);margin:14px 0 20px}.service-hero .hero-copy h1{font-size:40px}.hero-lead{font-size:16px}.hero-actions{gap:10px;margin:24px 0}.hero-actions .btn{width:auto;flex:1;min-width:140px;padding:12px 14px;font-size:13px}.hero-trust{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:18px}.hero-trust span{display:block;font-size:10px;line-height:1.5}.hero-trust b{font-size:12px;line-height:1.4}.hero-media,.service-hero .hero-media{height:300px;border-radius:48px 12px 12px 12px}.hero-caption{font-size:12px}.hero-caption b{display:grid}.legacy-benefit-grid{grid-template-columns:1fr 1fr}.legacy-benefit-grid>div,.legacy-benefit-grid>div:nth-child(3){padding:20px 10px;grid-template-columns:1fr;gap:8px;align-content:start}.legacy-benefit-grid i{grid-row:auto}.legacy-benefit-grid strong{font-size:12px}.legacy-benefit-grid span{font-size:10px}.legacy-benefit-grid>div:nth-child(odd){border-right:1px solid var(--line)}.section{padding:54px 0}.section h2,.section-head h2{font-size:34px}.section-head{gap:16px}.service-grid,.project-grid,.subservice-grid{grid-template-columns:1fr;gap:18px}.service-card,.project-card{min-height:310px}.service-card img,.project-card img,.service-card .card-placeholder,.project-card .card-placeholder{height:310px}.card-body{padding:24px}.card-body h3{font-size:26px}.legacy-steps{grid-template-columns:1fr 1fr;gap:28px 20px}.legacy-steps b{font-size:40px;margin-bottom:16px}.legacy-steps strong{font-size:15px}.legacy-steps span{font-size:13px}.related-links{grid-template-columns:1fr}.td-reference-gallery{gap:10px}.td-gallery-item{border-radius:8px}.benefit-grid{grid-template-columns:1fr}.entry-content{font-size:16px}.entry-content h2{font-size:29px}.td-info-cards>div{padding:20px}.td-form{padding:22px;gap:16px}.request-wrap h2{font-size:38px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 18px;padding:40px 0}.footer-grid>div:first-child{grid-column:1/-1}.footer-callout-row{padding:28px 0}.footer-callout strong{font-size:22px}.footer-bottom{padding:22px 0}.page-hero{padding:34px 0}.catalog-group-head{padding:20px;gap:14px;flex-wrap:wrap}.catalog-group-head h2{font-size:27px}.review-grid{grid-template-columns:1fr}}
@media(max-width:360px){.brand{gap:9px}.container,.narrow{width:calc(100% - 28px)}.hero-copy h1{font-size:38px}.hero-actions .btn{min-width:100%;width:100%}.footer-grid{grid-template-columns:1fr}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
/* Navigation remains available when JavaScript is disabled. The early head class prevents layout shifts. */
@media(max-width:860px){html:not(.td-js) .site-header{position:relative}html:not(.td-js) .site-nav{display:block;max-height:none}html:not(.td-js) .sub-menu{display:block}html:not(.td-js) .menu-toggle{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-pending{opacity:1;transform:none}.hero-media img,.service-card:hover,.project-card:hover,.service-card:hover img,.project-card:hover img,.subservice-card:hover img,.td-gallery-item:hover img,.btn:hover{transform:none!important}}
@media print{.site-header{position:static}.site-nav,.menu-toggle,.header-calc,.request-section,.footer-callout{display:none!important}.reveal-pending{opacity:1;transform:none}.hero-media img{transform:none!important}.section{padding:24px 0}.sticky-card{position:static}}


/* Visual continuity with jaluzi-saratov.ru, with readable contrast and responsive controls. */
:root{--bg:#fff;--ink:#303030;--muted:#666;--line:#e2e2e2;--soft:#f5f5f5;--accent:#087f40;--accent-dark:#06652f;--nav:#4b4e4c;--nav2:#363a37;--radius:5px}
body{font-family:"Helvetica Neue",Arial,"Segoe UI",sans-serif}
.container{width:min(1180px,calc(100% - 48px))}
.site-header,.header-main{background:#4b4e4c;color:#fff}
.site-header{box-shadow:0 2px 12px #0002}
.header-main-row{min-height:100px}



.header-region{color:#eee;font-size:12px;letter-spacing:.035em}
.phone{color:#fff;letter-spacing:.06em;font-size:22px;font-weight:500}
.header-email{color:#087f40;text-decoration:none;letter-spacing:.03em}
.header-calc{padding:11px 18px;background:var(--accent);border:0;border-radius:4px;text-align:center;color:#fff;min-width:220px;text-transform:uppercase}
.header-calc small{color:#fff;font-size:10px;text-transform:none}
.nav-row{border-top:1px solid #ffffff50}
.menu{justify-content:flex-start}
@media(min-width:861px){.menu>li{flex:1 1 auto}.menu>li>a{height:100%;justify-content:center}}
.menu>li>a{font-size:15px;letter-spacing:.065em;min-height:48px;font-weight:600;padding-left:14px;padding-right:14px}
.menu>.menu-item-has-children>a{padding-right:44px}
.menu>li:hover>a,.menu>.current-menu-item>a,.menu>.current-menu-ancestor>a{background:#353c36;color:#fff}
.menu-toggle span{background:#fff}
.menu-toggle{color:#fff}
.btn{border-radius:4px;text-transform:uppercase;letter-spacing:.035em;font-size:12px;font-weight:700}
.btn:hover{box-shadow:0 8px 20px #087f4025}
:focus-visible{outline-color:var(--accent)}
.site-header :focus-visible{outline-color:#a6efc0}
.section{padding:64px 0}
.section h2,.section-head h2,.hero-copy h1,.page-hero h1,.entry-content h2{font-family:"Helvetica Neue",Arial,sans-serif;font-weight:500;letter-spacing:-.025em}
.section h2,.section-head h2{font-size:clamp(28px,3vw,38px)}
.section-title-centered{text-align:center;max-width:800px;margin:0 auto 34px}
.section-title-centered p{margin:14px auto 0}
.section-title-centered>span{color:var(--muted);font-weight:500;letter-spacing:.12em}
.section-title-centered h2{text-transform:uppercase;font-size:clamp(27px,2.8vw,36px)}
.eyebrow{color:var(--accent);font-size:11px;font-weight:600}
.home-hero{position:relative;isolation:isolate;padding:60px 0 54px;min-height:610px;background:#344136;color:#fff}
.home-hero .hero-grid{display:block;min-height:0}
.home-hero .hero-media{position:absolute;inset:0;z-index:-1;width:100%;height:100%;border-radius:0;background:#344136}
.home-hero .hero-media:after{inset:0;background:linear-gradient(90deg,#142119e6,#142119c9 55%,#14211999)}
.home-hero .hero-media img{object-position:center 58%}
.home-hero .hero-caption{display:none}
.home-hero .hero-copy{max-width:860px;text-align:center;margin:auto;padding:0}
.home-hero .eyebrow{justify-content:center;color:#c1e7ce;font-size:12px}
.home-hero .hero-copy h1{font-weight:500;text-transform:uppercase;font-size:clamp(36px,4vw,56px);line-height:1.17;letter-spacing:.02em;margin:20px 0}
.home-hero .hero-lead{max-width:680px;margin:0 auto;color:#fff;font-size:17px;line-height:1.65}
.home-hero .hero-actions{justify-content:center;margin:28px 0}
.home-hero .btn{min-width:240px}
.home-hero .btn-ghost{border-color:#fff;color:#fff}
.home-hero .btn-ghost:hover{background:#fff;color:#25372b}
.home-hero .hero-trust{max-width:700px;margin:28px auto 0;border-color:#ffffff55;padding-top:24px}
.home-hero .hero-trust b{font-size:18px;color:#fff;font-weight:500}
.home-hero .hero-trust span{font-size:12px;color:#e2e9e2}
.legacy-benefits{background:#fff}
.legacy-benefit-grid{border:0}
.legacy-benefit-grid>div{min-height:135px;grid-template-columns:42px 1fr}
.legacy-benefit-grid i{border:1px solid #bdd8c6;background:#eef7f1;color:var(--accent);width:40px;height:40px;font-size:20px}
.legacy-benefit-grid strong{font-size:14px}
.legacy-benefit-grid span{font-size:12px}
.service-card,.project-card,.subservice-card{border-radius:5px}
.service-card{min-height:310px}
.service-card img,.service-card .card-placeholder{height:310px}
.card-body h3{font-size:23px;font-weight:500;letter-spacing:0}
.card-price{background:var(--accent);color:#fff;border-radius:3px;font-size:13px}
.card-more{letter-spacing:.06em;text-transform:uppercase;font-size:11px}
.card-placeholder{background:repeating-linear-gradient(120deg,#69756c,#69756c 2px,#748177 2px,#748177 20px)}
.section-more{text-align:center}
.legacy-steps b{font-family:Arial,sans-serif;font-size:38px;color:var(--accent);font-weight:400}
.about-strip{border-radius:0;background:#4b4e4c}
.about-strip .eyebrow{color:#c1e7ce}
.about-strip h2{text-transform:uppercase}
.request-section{background:#f0f2ef}
.td-form{border-radius:5px;border-top:3px solid var(--accent);box-shadow:0 8px 28px #00000009}
.td-form input,.td-form textarea{border-radius:3px}
.td-form input:focus,.td-form textarea:focus{box-shadow:0 0 0 3px #087f4015}
.hero-media,.service-hero .hero-media{border-radius:5px}
.service-hero .hero-copy h1{font-size:clamp(34px,3.8vw,52px)}
.hero-copy h1 em{font-style:normal;color:inherit}
.price-badge,.check{background:#e7f2ea;color:var(--accent-dark)}
.sticky-card,.content-card,.benefit-card,.td-info-cards>div,.td-gallery-item{border-radius:5px}
.sticky-card h2{font-size:27px}
.footer-callout{background:var(--accent)}
.site-footer{background:#3c403d}
.footer-brand{text-transform:uppercase;font-weight:400;letter-spacing:.04em}
.page-hero{background:#f3f4f2;padding:40px 0}
.page-hero h1{font-size:clamp(34px,4vw,48px)}
.review-card{border:1px solid var(--line);border-radius:5px;box-shadow:0 6px 22px #00000006;overflow-wrap:anywhere}
.review-card .entry-content{font-size:15px;line-height:1.8}
.review-quote{color:var(--accent);font:54px/1 Georgia,serif}
.review-card time{color:#666;font-size:13px}
.review-card footer{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}
.review-card .review-source{flex-basis:100%;font-size:12px;color:var(--muted)}
.review-source a{text-decoration:underline;text-underline-offset:3px}
.review-form-wrap{max-width:780px;margin:auto}
.review-form-wrap>p{color:var(--muted)}
.td-review-form{grid-template-columns:1fr}
.td-review-form textarea{min-height:180px;resize:vertical}
.td-review-form small{font-size:12px;color:var(--muted);font-weight:400}
.td-review-form .review-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.review-status{border:1px solid #a4cbb3;background:#eef7f1;padding:18px 22px;border-radius:5px;margin:0 0 24px}
.review-status.is-error{background:#fff5ed;border-color:#ddb487;color:#643b18}
.review-pagination{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px;justify-content:center}
.review-pagination .page-numbers{padding:8px 15px;border:1px solid var(--line);border-radius:4px;min-width:44px;text-align:center}
.review-pagination .current{background:var(--accent);color:#fff;border-color:var(--accent)}
.reviews-home-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:30px;align-items:center}
@media(max-width:1060px){.header-calc{display:none}.menu>li>a{font-size:13px;letter-spacing:.02em}.home-hero{min-height:0}.home-hero .hero-trust{grid-template-columns:repeat(3,minmax(0,1fr))}.home-hero .hero-trust span{display:block}.home-hero .hero-trust b{font-size:16px}.home-hero .hero-media{height:100%}}
@media(max-width:860px){.nav-row{border:0}.header-main-row{min-height:84px}.site-nav{background:#fff}.menu{padding:8px 20px 24px}.menu>li>a{font-size:16px;letter-spacing:0;color:#333}.menu>li:hover>a,.menu>.current-menu-item>a,.menu>.current-menu-ancestor>a{background:#edf4ee;color:var(--accent-dark)}.submenu-toggle[aria-expanded="true"]{background:#e4f1e8;color:var(--accent)}.nav-bar :focus-visible{outline-color:var(--accent)}.home-hero{padding:48px 0}.home-hero .hero-copy h1{font-size:40px}.home-hero .hero-lead{font-size:16px}.legacy-benefit-grid>div{grid-template-columns:40px 1fr}.header-main .menu-toggle{color:#fff}.header-contacts{display:none}.section{padding:54px 0}}
@media(max-width:600px){.container{width:calc(100% - 32px)}.header-main-row{min-height:76px}.home-hero{padding:36px 0 32px}.home-hero .eyebrow{font-size:10px;letter-spacing:.09em}.home-hero .hero-copy h1{font-size:30px;line-height:1.23;letter-spacing:.01em}.home-hero .hero-lead{font-size:15px}.home-hero .hero-actions{gap:12px;margin:24px 0}.home-hero .btn{min-width:0;flex:1 1 100%;width:100%}.home-hero .hero-trust{margin-top:22px;gap:10px}.home-hero .hero-trust b{font-size:13px}.home-hero .hero-trust span{font-size:11px}.legacy-benefit-grid>div,.legacy-benefit-grid>div:nth-child(3){grid-template-columns:1fr;padding:22px 14px}.legacy-benefit-grid strong{font-size:13px}.legacy-benefit-grid span{font-size:11px}.section{padding:44px 0}.section h2,.section-head h2{font-size:29px}.section-title-centered h2{font-size:27px}.service-hero .hero-copy h1{font-size:34px}.request-wrap h2{font-size:32px}.review-card{padding:22px}.review-form-wrap{width:100%}}
@media(max-width:360px){.home-hero .hero-copy h1{font-size:27px}.home-hero .hero-trust b{font-size:12px}.home-hero .hero-trust span{font-size:10px}}

.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* The first benefit must use the same grid as its siblings at every breakpoint. */
.legacy-benefit-grid>div:first-child{grid-template-columns:42px 1fr}
@media(max-width:860px){.legacy-benefit-grid>div:first-child{grid-template-columns:40px 1fr}}
@media(max-width:600px){.legacy-benefit-grid>div:first-child{grid-template-columns:1fr}}

/* Native touch/trackpad scrolling remains available without JavaScript. */
.review-carousel{min-width:0}
.review-carousel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.review-carousel-toolbar p{margin:0;color:var(--muted);font-size:14px}
.review-carousel-controls{display:flex;align-items:center;gap:8px}
.review-carousel-controls[hidden]{display:none}
.review-carousel-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--accent);font:24px/1 inherit;cursor:pointer;transition:background .2s,color .2s}
.review-carousel-controls button:hover:not(:disabled){background:var(--accent);color:#fff}
.review-carousel-controls button:disabled{opacity:.35;cursor:default}
.review-carousel-status{color:var(--muted);font-size:13px;min-width:62px;text-align:center}
.review-carousel .review-track{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:4px 0 18px;scrollbar-width:thin;scrollbar-color:var(--accent) #e8ece9}
.review-track>.review-card{scroll-snap-align:start;min-width:0;margin:0;transform:none;opacity:1}
.review-track:focus-visible,.review-carousel-controls button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:860px){.review-carousel .review-track{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:580px){.review-carousel .review-track{grid-auto-columns:92%}.review-carousel-toolbar{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.review-carousel-controls button{transition:none}}
@media print{.review-carousel .review-track{display:block;overflow:visible}.review-track>.review-card{margin-bottom:20px;break-inside:avoid}.review-carousel-toolbar{display:none}}

.company-intro{max-width:740px;color:var(--muted);margin:0 0 28px;line-height:1.8}
.workshop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.workshop-card{margin:0;min-width:0}
.workshop-card a{display:block;position:relative;overflow:hidden;border-radius:6px;background:#e6eae7}
.workshop-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .3s}
.workshop-card a:hover img{transform:scale(1.035)}
.workshop-card a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.workshop-card figcaption{padding:12px 0;font-size:14px;line-height:1.6;color:var(--muted)}
@media(max-width:860px){.workshop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.workshop-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.workshop-card img{transition:none}.workshop-card a:hover img{transform:none}}
/* Priority services and compact responsive identity. */

.header-main-row{gap:20px}.brand{flex-shrink:1}.header-contacts{flex-shrink:0}.phone{white-space:nowrap;letter-spacing:0}
.menu>li>a{font-size:13px;letter-spacing:0;padding-left:10px;padding-right:10px}
.client-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.client-list li{display:flex;align-items:center;justify-content:center;min-width:0;padding:24px 14px;text-align:center;border:1px solid var(--line);border-radius:5px;font-size:clamp(14px,1.5vw,18px);line-height:1.5;overflow-wrap:anywhere;font-weight:600;color:#34503c;background:#f5f8f5}
.catalog-section .service-card:nth-child(-n+2){border:2px solid #74b58a}
.mobile-call{display:none}
@media(min-width:861px) and (max-width:1060px){.menu{flex-wrap:wrap;justify-content:flex-start}.menu>li>a{font-size:12px;padding:0 9px}}
@media(max-width:860px){.brand{margin-right:auto}.header-main-row{gap:10px}.client-list{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-call{display:block;position:fixed;right:16px;bottom:16px;z-index:110;padding:12px 20px;background:var(--accent-dark);color:white;border:2px solid white;border-radius:30px;box-shadow:0 4px 20px #0003;font-weight:700}.site-footer{padding-bottom:70px}}
@media(max-width:360px){.menu-toggle{padding:4px;min-width:44px}.client-list{gap:10px}.client-list li{font-size:18px}}

.catalog-photo-note{margin-top:14px;margin-bottom:14px;font-size:12px;color:#59635c}.catalog-photo-note a{text-decoration:underline}.photo-credits{padding-bottom:24px;font-size:12px;color:#d3d9d5}.photo-credits summary{cursor:pointer}.photo-credits a{text-decoration:underline}.photo-credits li{margin:6px 0}

/* Vector logo: window frame and slats, with a shared two-line wordmark. */
.td-logo{display:inline-flex;align-items:center;gap:16px;vertical-align:middle;color:#fff;text-align:left;white-space:nowrap}
.td-logo-symbol{display:block;width:80px;height:80px;flex:none}
.td-logo-type{display:block}.td-logo-name{display:block;font-size:29px;font-weight:800;line-height:1.04;letter-spacing:.15em;color:#fff}
.td-logo-name>span{display:block;color:#087f40;letter-spacing:.065em;margin-top:4px}
.td-logo-caption{display:block;font-size:9px;font-weight:500;letter-spacing:.12em;line-height:1.3;margin-top:9px;color:#fff}
.brand{flex:none}.brand:hover{text-decoration:none}.brand:focus-visible{outline-offset:7px}.header-main-row{min-height:116px}
.footer-brand{margin-bottom:18px}.footer-brand .td-logo{gap:10px}.footer-brand .td-logo-symbol{width:56px;height:56px}.footer-brand .td-logo-name{font-size:21px}.footer-brand .td-logo-caption{font-size:7px;margin-top:6px}
@media(max-width:1060px){.header-main-row{min-height:104px}.brand{flex:1}.td-logo-symbol{width:68px;height:68px}.td-logo-name{font-size:25px}}
@media(max-width:860px){.header-main-row{min-height:92px}.td-logo{gap:12px}.td-logo-symbol{width:58px;height:58px}.td-logo-name{font-size:23px}.td-logo-caption{font-size:8px;margin-top:7px}}
@media(max-width:400px){.td-logo{gap:9px}.td-logo-symbol{width:50px;height:50px}.td-logo-name{font-size:20px}.td-logo-caption{font-size:7px;letter-spacing:.08em}.header-main-row{min-height:86px}}

/* Photo sending instructions stay within the form grid on every screen. */
.td-photo-email{grid-column:1/-1;min-width:0;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-size:14px;line-height:1.6;overflow-wrap:anywhere}.td-photo-email p{margin:8px 0 0}.td-company-history{margin-bottom:32px}

.td-form .td-photo-field{grid-column:1/-1;min-width:0}.td-photo-field input{max-width:100%;padding:10px;font-size:14px}.td-photo-field small{font-weight:400;line-height:1.5;color:var(--muted)}
