:root{color-scheme:light;--bg: #f2f5ee;--surface: #ffffff;--surface-muted: #e6efe7;--text: #17211c;--muted: #5d6b63;--line: #dce3dc;--primary: #176b5b;--primary-dark: #0f4f43;--accent: #d9882f;--accent-soft: #ffe3b8;--brand-mark-bg: #17211c;--brand-mark-text: #ffffff;--hero-tint: rgba(23, 107, 91, .18);--shadow: 0 22px 60px rgba(23, 33, 28, .14);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media(prefers-color-scheme:dark){html[data-theme=auto]{color-scheme:dark;--bg: #111815;--surface: #18231f;--surface-muted: #21322c;--text: #f2f6f0;--muted: #b8c5bd;--line: #31443c;--primary: #6ed6c1;--primary-dark: #9debdc;--accent: #f0aa51;--accent-soft: #5b3d1f;--brand-mark-bg: #f2f6f0;--brand-mark-text: #111815;--hero-tint: rgba(110, 214, 193, .18);--shadow: 0 24px 70px rgba(0, 0, 0, .36)}}html[data-theme=dark]{color-scheme:dark;--bg: #111815;--surface: #18231f;--surface-muted: #21322c;--text: #f2f6f0;--muted: #b8c5bd;--line: #31443c;--primary: #6ed6c1;--primary-dark: #9debdc;--accent: #f0aa51;--accent-soft: #5b3d1f;--brand-mark-bg: #f2f6f0;--brand-mark-text: #111815;--hero-tint: rgba(110, 214, 193, .18);--shadow: 0 24px 70px rgba(0, 0, 0, .36)}html[data-theme=light]{color-scheme:light}html[data-accent=slate]{--primary: #475569;--primary-dark: #334155;--hero-tint: rgba(71, 85, 105, .14)}html[data-accent=amber]{--primary: #b45309;--primary-dark: #92400e;--hero-tint: rgba(180, 83, 9, .14)}html[data-theme=dark][data-accent=slate]{--primary: #94a3b8;--primary-dark: #e2e8f0;--hero-tint: rgba(148, 163, 184, .16)}html[data-theme=dark][data-accent=amber]{--primary: #f59e0b;--primary-dark: #fde68a;--hero-tint: rgba(245, 158, 11, .16)}@media(prefers-color-scheme:dark){html[data-theme=auto][data-accent=slate]{--primary: #94a3b8;--primary-dark: #e2e8f0;--hero-tint: rgba(148, 163, 184, .16)}html[data-theme=auto][data-accent=amber]{--primary: #f59e0b;--primary-dark: #fde68a;--hero-tint: rgba(245, 158, 11, .16)}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.6}body:before{position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent-soft) 78%,transparent),transparent 30rem),radial-gradient(circle at 84% 18%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 26rem),linear-gradient(135deg,var(--hero-tint),transparent 40%);content:""}body:after{position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(118deg,transparent 12%,color-mix(in srgb,var(--primary) 16%,transparent) 12.15%,transparent 12.5%,transparent 42%,color-mix(in srgb,var(--accent) 13%,transparent) 42.15%,transparent 42.5%,transparent 74%,color-mix(in srgb,var(--primary) 12%,transparent) 74.15%,transparent 74.5%),linear-gradient(24deg,transparent 18%,color-mix(in srgb,var(--line) 44%,transparent) 18.1%,transparent 18.35%,transparent 62%,color-mix(in srgb,var(--primary) 14%,transparent) 62.1%,transparent 62.4%),radial-gradient(circle at 18% 22%,color-mix(in srgb,var(--primary) 24%,transparent) 0 2px,transparent 2.5px),radial-gradient(circle at 74% 34%,color-mix(in srgb,var(--accent) 24%,transparent) 0 2px,transparent 2.5px),radial-gradient(circle at 46% 72%,color-mix(in srgb,var(--primary) 20%,transparent) 0 2px,transparent 2.5px);opacity:.55;content:""}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 34%,transparent);outline-offset:3px}p,h1,h2,h3{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:0}h1{max-width:840px;font-size:clamp(2.15rem,4.7vw,4.25rem);margin-bottom:1.15rem}h2{font-size:clamp(1.75rem,3.2vw,2.65rem);margin-bottom:.85rem}h3{font-size:1.35rem;margin-bottom:.75rem}main{overflow:hidden}.site-header,.site-footer,.hero,.page-hero,.section,.cta-band{width:min(1120px,calc(100% - 40px));margin-inline:auto}.announcement-bar{position:relative;z-index:12;display:flex;align-items:center;justify-content:center;gap:1rem;border-bottom:1px solid color-mix(in srgb,var(--accent) 70%,var(--primary));background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 96%,#ffffff 4%),color-mix(in srgb,var(--primary) 88%,#000000 12%));color:#fff;padding:.82rem 1rem;text-align:center;box-shadow:0 16px 38px #17211c2e}.announcement-bar.is-hidden{display:none}.announcement-bar p{margin:0;color:#fff;font-size:.98rem;font-weight:850}.announcement-pulse{position:relative;display:inline-grid;width:16px;height:16px;flex:0 0 auto;border:3px solid rgba(255,255,255,.88);border-radius:999px;animation:news-marker-pulse 1.7s ease-in-out infinite;background:var(--primary);box-shadow:0 0 0 1px #ffffff6b,0 0 0 8px color-mix(in srgb,var(--primary) 20%,transparent)}.announcement-pulse:after{position:absolute;inset:-10px;border:2px solid rgba(255,255,255,.44);border-radius:inherit;animation:news-marker-ring 1.7s ease-out infinite;content:""}.announcement-items{display:grid;align-items:center;min-width:0}@keyframes news-marker-pulse{0%,to{transform:scale(1)}45%{transform:scale(.86)}}@keyframes news-marker-ring{0%{opacity:.72;transform:scale(.55)}70%,to{opacity:0;transform:scale(1.75)}}.announcement-item{grid-area:1 / 1;display:flex;align-items:center;justify-content:center;gap:1rem;opacity:0;transform:translateY(.35rem);transition:opacity .36s ease,transform .36s ease,visibility .36s ease;visibility:hidden;pointer-events:none}.announcement-item.is-active{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto}.announcement-item[hidden]{display:none}.announcement-bar a{flex:0 0 auto;border-radius:8px;background:#fff;color:#17211c;font-size:.86rem;font-weight:850;padding:.45rem .78rem}.announcement-bar a:hover{background:color-mix(in srgb,#ffffff 86%,var(--accent))}.scroll-cue{position:fixed;left:50%;bottom:1.25rem;z-index:11;display:grid;width:36px;height:38px;place-items:center;border:0;background:transparent;color:color-mix(in srgb,var(--muted) 78%,var(--text));cursor:pointer;opacity:0;pointer-events:none;transform:translate(-50%) translateY(8px);transition:opacity .18s ease,transform .18s ease,border-color .16s ease}.scroll-cue.is-visible{opacity:.72;pointer-events:auto;transform:translate(-50%) translateY(0)}.scroll-cue svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.scroll-cue:hover{opacity:.95}.scroll-cue-line{animation:scroll-cue-line-pulse 1.55s ease-in-out infinite}.scroll-cue-line-1{animation-delay:0s}.scroll-cue-line-2{animation-delay:.16s}.scroll-cue-line-3{animation-delay:.32s}@keyframes scroll-cue-line-pulse{0%,to{opacity:.24;transform:translateY(-1px)}50%{opacity:.9;transform:translateY(1px)}}.site-header{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:84px;position:sticky;top:0;z-index:40;isolation:isolate}.site-header:before{position:absolute;inset:0 calc(50% - 50vw);z-index:-1;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(18px);content:""}.brand{display:inline-flex;align-items:center;font-weight:700;min-width:0}.brand-logo{display:block;width:clamp(112px,13vw,130px);height:auto;filter:drop-shadow(0 10px 18px rgba(23,33,28,.1))}.brand-logo-dark,html[data-theme=dark] .brand-logo-light{display:none}html[data-theme=dark] .brand-logo-dark{display:block;filter:drop-shadow(0 10px 20px rgba(0,0,0,.28))}@media(prefers-color-scheme:dark){html[data-theme=auto] .brand-logo-light{display:none}html[data-theme=auto] .brand-logo-dark{display:block;filter:drop-shadow(0 10px 20px rgba(0,0,0,.28))}}.main-nav{display:flex;align-items:center;justify-self:center;gap:1.2rem}.language-switcher{display:inline-flex;align-items:center;gap:.25rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 78%,transparent);padding:.25rem}.language-switcher a{display:inline-grid;height:34px;min-width:34px;place-items:center;border-radius:6px;color:var(--text);font-size:.8rem;font-weight:800;padding:0 .55rem}.language-switcher a.active{background:var(--primary);color:#fff}.nav-controls{display:flex;align-items:center;gap:.5rem;justify-self:end}.nav-lang{display:inline-flex;align-items:center;gap:.2rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 78%,transparent);padding:.2rem}.nav-lang a{display:inline-grid;height:28px;min-width:28px;place-items:center;border-radius:5px;color:var(--text);font-size:.72rem;font-weight:850;letter-spacing:.04em;padding:0 .4rem;text-decoration:none;transition:background .12s ease,color .12s ease}.nav-lang a:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.nav-lang a.active{background:var(--primary);color:#fff}.nav-theme-toggle{display:inline-grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 78%,transparent);color:var(--text);cursor:pointer;padding:0;transition:border-color .16s ease,color .16s ease}.nav-theme-toggle:hover{border-color:var(--primary);color:var(--primary)}.theme-icon{display:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.nav-theme-toggle[data-current-theme=auto] .theme-icon-auto,.nav-theme-toggle[data-current-theme=light] .theme-icon-light,.nav-theme-toggle[data-current-theme=dark] .theme-icon-dark{display:block}.nav-accents{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 78%,transparent);padding:.42rem .55rem}.nav-accent-dot{width:13px;height:13px;border:2px solid transparent;border-radius:50%;cursor:pointer;padding:0;transition:transform .12s ease,outline-color .12s ease}.nav-accent-dot[data-accent-set=green]{background:#176b5b}.nav-accent-dot[data-accent-set=slate]{background:#475569}.nav-accent-dot[data-accent-set=amber]{background:#b45309}.nav-accent-dot:hover{transform:scale(1.25)}.nav-accent-dot.is-active{outline:2px solid var(--text);outline-offset:2px;transform:scale(1.15)}.main-nav a,.nav-dropdown-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:.95rem;font-weight:650;padding:.25rem 0}.main-nav a.nav-cta{color:var(--primary);font-weight:750}.main-nav a.nav-cta:hover,.main-nav a.nav-cta:focus-visible{color:var(--primary)}.main-nav a.nav-cta svg{width:1em;height:1em;flex:0 0 auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2}.main-nav a:hover,.main-nav a.active,.nav-dropdown:hover .nav-dropdown-toggle,.nav-dropdown:focus-within .nav-dropdown-toggle,.nav-dropdown.active .nav-dropdown-toggle{color:var(--primary)}.nav-dropdown{position:relative}.nav-dropdown-toggle{gap:.25rem}.nav-dropdown-toggle svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.3;transition:transform .16s ease}.nav-dropdown:hover .nav-dropdown-toggle svg,.nav-dropdown:focus-within .nav-dropdown-toggle svg{transform:rotate(180deg)}.main-nav a:after,.nav-dropdown-toggle:after{position:absolute;right:0;bottom:-.35rem;left:0;height:2px;border-radius:999px;background:var(--primary);content:"";opacity:0;transform:scaleX(.4);transition:opacity .16s ease,transform .16s ease}.main-nav a:hover:after,.main-nav a.active:after,.nav-dropdown:hover .nav-dropdown-toggle:after,.nav-dropdown:focus-within .nav-dropdown-toggle:after,.nav-dropdown.active .nav-dropdown-toggle:after{opacity:1;transform:scaleX(1)}.main-nav a.nav-cta:after{background:var(--primary)}.nav-dropdown-menu{position:absolute;top:calc(100% + .85rem);left:50%;z-index:50;display:grid;min-width:210px;gap:.25rem;border:1px solid color-mix(in srgb,var(--line) 84%,var(--primary));border-radius:8px;background:color-mix(in srgb,var(--surface) 94%,transparent);padding:.45rem;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translate(-50%) translateY(8px);transition:opacity .16s ease,transform .16s ease;backdrop-filter:blur(18px)}.nav-dropdown-menu:before{position:absolute;top:-.85rem;right:0;left:0;height:.85rem;content:""}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.nav-dropdown-menu a{justify-content:flex-start;border-radius:6px;padding:.65rem .75rem}.nav-dropdown-menu a:after{display:none}.nav-dropdown-menu a:hover,.nav-dropdown-menu a.active{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,transparent),transparent 72%),var(--surface-muted);color:var(--primary)}.nav-toggle{display:none;width:46px;height:46px;place-items:center;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 78%,transparent);color:var(--text);cursor:pointer;padding:0}.nav-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.header-panel{display:contents}.hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:center;gap:3rem;min-height:560px;padding:4.5rem 0}.image-hero{align-items:start;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr)}.hero-full{grid-template-columns:1fr;min-height:auto;padding-bottom:1.5rem}.hero-media{display:grid;gap:.75rem}.hero-photo-wrap{border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}.hero-photo-wrap img{display:block;width:100%;height:auto;object-fit:cover}.process-belt{width:min(100% - 2rem,1120px);margin-inline:auto;display:grid;gap:.75rem;padding-bottom:4rem}.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:.75rem}.hero-stats article{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:.9rem 1rem;box-shadow:var(--shadow)}.hero-stats strong,.hero-stats span{display:block}.hero-stats strong{color:var(--primary);font-size:1.2rem;font-weight:800;line-height:1.1}.hero-stats span{margin-top:.3rem;color:var(--muted);font-size:.82rem;line-height:1.3}.page-hero{display:flex;min-height:360px;flex-direction:column;justify-content:flex-start;padding:4.5rem 0 3rem;text-align:left}.contact-hero{max-width:none}.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.privacy-hero{min-height:300px}.lead{max-width:700px;color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.2rem)}.eyebrow{margin-bottom:.85rem;color:var(--primary);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.actions{display:flex;flex-wrap:wrap;gap:.85rem;margin:2rem 0 1.25rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:46px;border:1px solid transparent;border-radius:8px;font-weight:750;padding:.75rem 1.15rem}.button svg,.project-card-button svg,.text-link svg,.footer-link svg{width:1.05em;height:1.05em;flex:0 0 auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.button.primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}.button.primary:hover{background:var(--primary-dark)}.button.secondary{border-color:var(--line);background:var(--surface)}.button.secondary:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.compact-button{width:fit-content;min-height:40px;padding:.55rem .9rem;font-size:.92rem}.trust-line,.section-heading p,.service-card p,.project-copy p,.steps p,.site-footer p,.maintenance span,.pricing span,.service-detail p,.faq p{color:var(--muted)}.hero-panel{display:grid;gap:1rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:1rem;box-shadow:var(--shadow)}.metric{border:1px solid var(--line);border-radius:8px;padding:1.25rem}.metric span{display:block;color:var(--accent);font-weight:800;margin-bottom:.75rem}.metric strong{display:block;font-size:1.15rem;margin-bottom:.35rem}.metric p{margin-bottom:0;color:var(--muted)}.section{padding:4.5rem 0}.section[id]{scroll-margin-top:96px}.privacy-content{display:grid;max-width:860px;gap:1.25rem;padding-top:0}.privacy-section{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:1.5rem}.privacy-section h2{font-size:1.25rem;margin-bottom:.7rem}.privacy-section p{color:var(--muted)}.section-heading{max-width:760px;margin-bottom:2rem}.section-heading.narrow{max-width:680px}.card-grid{display:grid;gap:1rem}.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card-grid.auto{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.promise-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2.5rem}.promise-item{padding:1.35rem 0;border-top:2px solid var(--primary)}.promise-item strong{display:block;font-size:1.05rem;font-weight:800;color:var(--text);margin-bottom:.5rem;line-height:1.2}.promise-item p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.5}.service-strip{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.service-strip a{display:inline-flex;align-items:center;gap:.6rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-weight:800;padding:.75rem .9rem;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.service-strip span{display:inline-grid;min-width:32px;height:32px;place-items:center;border-radius:6px;background:var(--surface-muted);color:var(--primary-dark);font-size:.72rem;font-weight:900}.service-card,.maintenance article,.pricing article,.steps article,.service-detail article,.faq details,.contact-form{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:1.35rem;min-width:0;overflow-wrap:anywhere}.service-card,.maintenance article,.pricing article,.steps article,.service-detail article{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}@media(hover:hover)and (pointer:fine){.service-strip a:hover,.service-card:hover,.maintenance article:hover,.pricing article:hover,.steps article:hover,.service-detail article:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-3px)}}.card-icon{display:inline-grid;min-width:42px;height:42px;place-items:center;border-radius:8px;background:var(--surface-muted);color:var(--primary-dark);font-size:.85rem;font-weight:850;margin-bottom:1rem}.split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(300px,1.05fr);gap:3rem;align-items:start}.split p{color:var(--muted)}.check-list{display:grid;gap:.8rem;margin:0;padding:0;list-style:none}.check-list li{position:relative;padding-left:1.65rem}.check-list li:before{position:absolute;left:0;top:.1rem;color:var(--primary);content:"✓";font-weight:900}.check-list.compact{gap:.45rem}.project-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:2rem;align-items:stretch;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:1rem;box-shadow:var(--shadow)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.project-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:-.75rem 0 1.25rem}.project-filters button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer;font:inherit;font-size:.9rem;font-weight:800;padding:.45rem .75rem}.project-filters button:hover,.project-filters button.active{border-color:var(--primary);background:var(--primary);color:#fff}.project-tile{position:relative;display:grid;grid-template-rows:190px 1fr;min-height:420px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);transition:transform .16s ease,border-color .16s ease}.project-tile.is-hidden{display:none}.project-tile:hover{border-color:var(--primary);transform:translateY(-3px)}.project-tile-preview{position:relative;display:grid;grid-template-rows:repeat(3,26px);align-content:center;gap:.6rem;overflow:hidden;padding:1.25rem;background:radial-gradient(circle at 84% 22%,rgba(217,136,47,.46),transparent 30%),linear-gradient(135deg,#24352f,#15201c)}.project-tile-preview img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.project-tile-preview span{display:block;height:26px;border-radius:6px;background:#ffffff2b}.project-tile-preview span:nth-child(1){width:64%}.project-tile-preview span:nth-child(2){width:88%}.project-tile-preview span:nth-child(3){width:72%}.project-tile-copy{display:flex;min-height:240px;flex-direction:column;padding:1.35rem}.project-tile-copy p{color:var(--muted)}.project-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.25rem 0 1rem}.project-tags span{display:inline-flex;align-items:center;min-height:28px;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--primary-dark);font-size:.76rem;font-weight:850;padding:.25rem .55rem}.project-card-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;width:fit-content;min-height:40px;border:1px solid var(--primary);border-radius:8px;background:var(--surface);color:var(--primary);font-size:.9rem;font-weight:850;margin-top:auto;padding:.55rem .85rem;transition:background .16s ease,color .16s ease}.project-tile:hover .project-card-button{background:var(--primary);color:#fff}.project-type{color:var(--accent);font-size:.78rem;font-weight:850;margin-bottom:.8rem;text-transform:uppercase}.project-status{position:absolute;top:1rem;right:1rem;border:1px solid color-mix(in srgb,var(--primary) 46%,transparent);border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,transparent),transparent 72%),color-mix(in srgb,var(--surface) 94%,transparent);color:var(--primary-dark);font-size:.75rem;font-weight:850;padding:.35rem .65rem;box-shadow:0 8px 22px #0f172a1f;backdrop-filter:blur(12px)}.project-tile[data-for-sale]{border-top:3px solid var(--accent)}.project-tile[data-for-sale]:hover{border-color:var(--accent)}.project-tile[data-for-sale] .project-status{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 20%,transparent),transparent 72%),color-mix(in srgb,var(--surface) 94%,transparent);color:var(--accent)}.project-tile[data-for-sale]:hover .project-card-button{border-color:var(--accent);background:var(--accent);color:#fff}.news-section{position:relative}.news-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:2rem;align-items:end;margin-bottom:5rem}.news-hero h1{max-width:780px;margin-bottom:1rem}.news-hero p:not(.eyebrow){max-width:720px;font-size:1rem}.news-featured{border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,transparent),transparent 70%),var(--surface);padding:1rem}.news-featured span{display:inline-flex;color:var(--accent);font-size:.75rem;font-weight:900;letter-spacing:.04em;margin-bottom:.45rem;text-transform:uppercase}.news-featured h2{font-size:clamp(1rem,1.5vw,1.2rem);margin-bottom:.4rem}.news-featured p{color:var(--muted);font-size:.9rem;margin-bottom:0}.news-guide-list{position:relative;display:grid;gap:.75rem;max-width:920px;margin-top:1.1rem;padding-left:1.75rem}.news-guide-list:before{position:absolute;top:1.4rem;bottom:1.4rem;left:.65rem;width:2px;border-radius:2px;background:var(--line);content:"";pointer-events:none}.news-item{position:relative;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);transition:border-color .16s ease,box-shadow .16s ease}.news-item:before{position:absolute;top:1.45rem;left:-1.1rem;z-index:1;width:10px;height:10px;border:2px solid var(--bg);border-radius:50%;background:var(--primary);content:"";pointer-events:none}.news-item.is-hidden{display:none}.news-summary{display:grid;grid-template-columns:minmax(96px,.13fr) minmax(0,1fr);gap:.95rem;min-width:0;padding:.95rem 1rem;cursor:pointer;list-style:none}.news-item[open] .news-summary{border-bottom:1px solid var(--line)}.news-summary::-webkit-details-marker{display:none}.news-summary::marker{content:""}.news-date{display:grid;align-self:start;align-content:start;justify-items:start;gap:.15rem;border-right:1px solid var(--line);padding-right:.8rem}.news-date-day{font-size:1.85rem;font-weight:900;line-height:1;color:var(--primary-dark)}.news-date-month{font-size:.72rem;font-weight:800;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.news-copy{display:grid;min-width:0;gap:.55rem}.news-copy h3,.news-body h3{margin-bottom:.3rem}.news-copy h3{font-size:1.12rem}.news-copy p{color:var(--muted);font-size:.95rem}.news-more{display:inline-flex;width:fit-content;align-items:center;border-radius:8px;color:var(--primary);font-size:.86rem;font-weight:850}.news-more:after{margin-left:.35rem;content:"↓"}.news-item[open] .news-more:after{content:"↑"}.when-open,.news-item[open] .when-closed{display:none}.news-item[open] .when-open{display:inline}.news-body{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,transparent),transparent 70%);padding:1rem 1rem 1rem calc(96px + 1.95rem);margin:0}.news-body p{color:var(--muted)}.news-body p:last-child{margin-bottom:0}.news-pagination{display:flex;align-items:center;gap:.75rem;margin-top:1.25rem}.news-pagination[hidden]{display:none}.news-pagination span{color:var(--muted);font-size:.9rem;font-weight:800}.news-pagination button:disabled{cursor:not-allowed;opacity:.48}.news-year-divider{display:flex;align-items:center;gap:.85rem;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.news-year-divider.is-hidden{display:none}.news-year-divider:after{flex:1;height:1px;background:var(--line);content:""}@media(hover:hover)and (pointer:fine){.news-item:not([open]):hover{border-color:var(--primary)}}.filter-empty,.news-empty{border:1px solid color-mix(in srgb,var(--primary) 48%,var(--line));border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 13%,transparent),transparent 72%),color-mix(in srgb,var(--surface) 88%,var(--primary));color:color-mix(in srgb,var(--primary-dark) 72%,var(--text));font-weight:750;padding:1rem 1.1rem;box-shadow:0 14px 34px color-mix(in srgb,var(--primary) 14%,transparent)}.project-copy{padding:1rem}.project-access{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem 1.5rem;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:1.25rem;box-shadow:var(--shadow)}.project-access p{max-width:680px;margin-bottom:0;color:var(--muted)}.project-access h3{margin-bottom:.45rem}.credential-list{grid-column:1 / -1;display:grid;gap:.55rem;margin:0}.credential-row{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(0,1.6fr);gap:.7rem;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);margin:0;padding:.7rem}.credential-name,.credential-values,.credential-value{min-width:0}.credential-values{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.credential-value{display:inline-grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.4rem;align-items:baseline;max-width:100%;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:8px;background:var(--surface);padding:.35rem .55rem}.credential-value button{border:0;border-radius:6px;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);cursor:pointer;font:inherit;font-size:.74rem;font-weight:850;padding:.22rem .45rem}.credential-value button:hover,.credential-value button.copied{background:var(--primary);color:#fff}.credential-list dt{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.credential-list dd{overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.94rem;font-weight:800}.credential-name dd{font-family:inherit}.project-preview{min-height:360px;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 80% 20%,rgba(217,136,47,.35),transparent 26%),#26342f;color:#fff}.project-image-preview{min-height:360px;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#111714;box-shadow:0 24px 80px #00000061;margin:0}.project-image-trigger{display:block;width:100%;height:100%;min-height:360px;border:0;background:transparent;cursor:zoom-in;padding:0}.project-image-trigger img,.project-image-preview>img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover}.project-lightbox{width:min(100vw - 32px,1280px);max-width:none;max-height:calc(100vh - 32px);border:0;background:transparent;color:#fff;margin:auto;padding:0}.project-lightbox::backdrop{background:#0c110fd1;backdrop-filter:blur(8px)}.project-lightbox[open]{display:grid;place-items:center}.project-lightbox-frame{max-height:calc(100vh - 32px);overflow:auto;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#111714;box-shadow:0 24px 80px #00000061}.project-lightbox-frame img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 32px)}.project-lightbox-close{position:fixed;top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));z-index:1;display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#111714db;color:#fff;cursor:pointer;padding:0}.project-lightbox-close:hover{background:#1f2a25f5}.project-lightbox-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.project-image-wrapper{position:relative;min-height:360px}.project-image-nav{position:absolute;bottom:12px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:10px;pointer-events:none}.project-image-nav-btn{pointer-events:all;display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#111714db;color:#fff;cursor:pointer;padding:0}.project-image-nav-btn:hover{background:#1f2a25f5}.project-image-nav-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.project-image-counter{font-size:.75rem;color:#fff;background:#111714db;border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:4px 10px;pointer-events:none}.project-lightbox-nav{position:fixed;bottom:max(1rem,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:1;display:flex;align-items:center;gap:10px}.project-lightbox-nav-btn{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#111714db;color:#fff;cursor:pointer;padding:0}.project-lightbox-nav-btn:hover{background:#1f2a25f5}.project-lightbox-nav-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.project-lightbox-counter{font-size:.75rem;color:#fff;background:#111714db;border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:4px 10px}.preview-topbar{display:flex;gap:.4rem;height:44px;align-items:center;border-bottom:1px solid rgba(255,255,255,.12);padding:0 1rem}.preview-topbar span{width:9px;height:9px;border-radius:99px;background:#d8e0d9}.preview-grid{display:grid;grid-template-columns:30% 1fr;min-height:316px}.preview-sidebar{background:#ffffff12}.preview-content{padding:1.4rem}.preview-line,.preview-stats span,.preview-table span{display:block;border-radius:6px;background:#ffffff29}.preview-line.wide{width:72%;height:22px;margin-bottom:1.2rem}.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.2rem}.preview-stats span{height:72px}.preview-table{display:grid;gap:.7rem}.preview-table span{height:28px}.text-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--primary);font-weight:800;margin-top:1.15rem}.maintenance,.pricing{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.maintenance article strong,.pricing article strong{display:block;margin-bottom:.45rem}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.steps span{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--primary);color:#fff;font-weight:800;margin-bottom:1rem}.service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-group-card{display:grid;align-content:start;gap:.85rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);padding:1.25rem;transition:transform .16s ease,border-color .16s ease}.service-group-card:hover{border-color:var(--primary);transform:translateY(-3px)}.service-group-card p{color:var(--muted)}.service-group-card .check-list{margin-top:.2rem}.delivery-grid,.timeline-grid,.support-grid,.maintenance-pricing,.tech-grid{display:grid;gap:1rem}.delivery-grid,.timeline-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.support-grid,.maintenance-pricing{grid-template-columns:repeat(3,minmax(0,1fr))}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-grid article,.timeline-grid article,.support-grid article,.maintenance-pricing article,.tech-grid article{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:1.25rem}.delivery-grid article,.timeline-grid article,.maintenance-pricing article{display:grid;align-content:start;gap:1rem}.delivery-grid span,.timeline-grid span{display:inline-grid;width:max-content;min-width:36px;height:36px;place-items:center;border-radius:8px;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary-dark);font-size:.82rem;font-weight:900;padding:0 .65rem}.support-grid p,.delivery-grid p,.timeline-grid p,.maintenance-pricing p,.tech-grid p{color:var(--muted)}.timeline-grid strong{color:var(--primary-dark);font-size:1.12rem}.maintenance-pricing strong{display:block;color:var(--primary-dark);font-size:clamp(1.2rem,2vw,1.55rem);margin:.35rem 0 .6rem}.maintenance-pricing .check-list{margin-top:0}.maintenance-summary{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.maintenance-summary span,.tech-grid span{display:inline-flex;align-items:center;min-height:32px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,var(--primary) 8%);color:var(--primary-dark);font-size:.88rem;font-weight:800;padding:.38rem .68rem}.tech-grid div{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.9rem}.automation-section{align-items:center}.automation-list{display:flex;flex-wrap:wrap;gap:.65rem}.automation-list span{display:inline-flex;align-items:center;min-height:34px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--primary-dark);font-size:.9rem;font-weight:800;padding:.45rem .75rem}.service-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.compact-services{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-services article{padding:1rem}.compact-services .card-icon{min-width:36px;height:36px;margin-bottom:.8rem;font-size:.76rem}.compact-services h3{font-size:1.08rem;margin-bottom:.55rem}.compact-services p{font-size:.95rem;margin-bottom:0}.faq{display:grid;gap:1rem}.faq summary{cursor:pointer;font-weight:800}.faq p{margin:.9rem 0 0}.cta-band{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:4rem;border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary-dark) 78%,#000 22%),#17211c);color:#fff;padding:2rem}.cta-band p{max-width:680px;color:#ffffffc2}.cta-band h2{max-width:790px;margin-bottom:.75rem}.cta-band .eyebrow{color:#8ed8c9}.cta-band .button.primary{flex:0 0 auto;background:#fff;color:#17211c}.cta-band .button.primary:hover{background:#eef2ec;color:#17211c}.contact-layout{display:grid;grid-template-columns:300px 1fr;gap:2.5rem;align-items:start;max-width:1100px}.contact-aside{position:sticky;top:5rem;display:grid;gap:1rem}.contact-aside-card{display:grid;gap:.85rem;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:1.35rem}.contact-aside-text{color:var(--muted);font-size:.95rem;line-height:1.5;margin:0}.contact-channel{display:flex;align-items:center;gap:.75rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);color:var(--text);font-size:.9rem;font-weight:700;padding:.7rem .9rem;text-decoration:none;transition:border-color .16s ease,background .16s ease}.contact-channel:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface-muted))}.contact-channel-icon{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:6px;background:var(--surface);color:var(--primary)}.contact-channel-icon svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.contact-form{display:grid;gap:1.25rem}.contact-form-header{display:grid;gap:.4rem;padding-bottom:.5rem;border-bottom:1px solid var(--line)}.contact-form-header h2{font-size:clamp(1.1rem,1.6vw,1.35rem)}.contact-form p,.contact-form-header p{color:var(--muted)}.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-field-wide{grid-column:1 / -1}.contact-form-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.form-honeypot{position:absolute;left:-9999px}.form-consent{display:flex;align-items:flex-start;gap:.65rem;color:var(--muted);font-size:.94rem;line-height:1.45}.form-consent input{width:auto;margin-top:.22rem}.form-captcha{min-height:78px}.form-status{min-height:1.5rem;margin:-.25rem 0 0;color:var(--muted);font-weight:800}.form-status[data-state=success]{color:var(--primary-dark)}.form-status[data-state=error]{color:#9f1239}label{display:grid;gap:.45rem;color:var(--muted);font-weight:700}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;padding:.75rem .9rem}select{cursor:pointer}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}textarea{resize:vertical}.site-footer{border-top:1px solid var(--line);padding:3rem 0 2rem;color:var(--muted)}.footer-main{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(2,minmax(160px,.7fr));gap:2rem}.footer-brand{max-width:420px}.footer-quote{color:var(--text);font-size:1.05rem;font-weight:800;line-height:1.35;max-width:34ch}.footer-brand p{margin-bottom:.75rem}.footer-column{display:grid;align-content:start;gap:.55rem}.footer-column h2{color:var(--text);font-size:.9rem;margin-bottom:.35rem;text-transform:uppercase}.footer-column a,.footer-column span{color:var(--muted);font-size:.95rem}.footer-link{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.footer-link svg{width:.95em;height:.95em}.footer-column a:hover{color:var(--primary)}.social-links{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.5rem}.social-links a{display:inline-grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}.social-links a:hover{border-color:var(--primary);color:var(--primary)}.social-links svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.reveal-on-scroll{opacity:0;transform:translateY(18px);transition:opacity .52s ease,transform .52s ease}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.announcement-item{transition:none}.announcement-pulse,.announcement-pulse:after,.scroll-cue-line{animation:none}.reveal-on-scroll{opacity:1;transform:none;transition:none}}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);margin-top:2rem;padding-top:1.25rem;font-size:.9rem}@media(max-width:1040px){.image-hero{grid-template-columns:1fr}.service-groups,.delivery-grid,.timeline-grid,.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:880px){.site-header{grid-template-columns:1fr auto;align-items:start;padding:1rem 0}.nav-toggle{display:inline-grid;justify-self:end}.header-panel{display:none;grid-column:1 / -1;gap:.85rem;padding:1rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--bg) 84%,transparent);box-shadow:var(--shadow)}.header-panel.is-open{display:grid}.main-nav{width:100%;flex-direction:column;align-items:stretch;justify-self:stretch;overflow:hidden;padding:0;border:0;background:transparent}.main-nav a{justify-content:flex-start;min-width:0;width:100%;padding:.55rem 0}.nav-dropdown{width:100%}.nav-dropdown-toggle{justify-content:flex-start;width:100%;padding:.55rem 0}.nav-dropdown-toggle svg{transform:rotate(180deg)}.nav-dropdown-menu{position:static;display:grid;min-width:0;width:100%;margin-top:.25rem;border-color:var(--line);background:color-mix(in srgb,var(--surface) 76%,transparent);box-shadow:none;opacity:1;pointer-events:auto;transform:none;backdrop-filter:none}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{transform:none}.nav-dropdown-menu:before{display:none}.main-nav a:after,.nav-dropdown-toggle:after{bottom:.2rem}.nav-controls{justify-self:start;padding-top:.75rem;border-top:1px solid var(--line)}.hero,.split,.project-card,.project-access,.delivery-grid,.timeline-grid,.support-grid,.maintenance-pricing,.tech-grid,.contact-layout,.contact-form-grid{grid-template-columns:1fr}.contact-aside{position:static}.hero{min-height:auto;padding-top:3rem}.card-grid.three,.card-grid.four,.steps,.compact-services,.service-detail,.project-grid,.promise-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.news-hero{grid-template-columns:1fr;align-items:start}.news-summary{grid-template-columns:1fr;gap:.75rem}.news-date{border-right:0;border-bottom:1px solid var(--line);padding-right:0;padding-bottom:.75rem}.news-body{padding-left:1rem}.cta-band{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.announcement-bar{align-items:stretch;flex-direction:column;gap:.55rem}.announcement-item{align-items:center;flex-direction:column;gap:.55rem}.announcement-bar a{width:fit-content;align-self:center}.site-header,.site-footer,.hero,.page-hero,.section,.cta-band{width:min(100% - 28px,1120px)}.site-header{grid-template-columns:1fr auto}.card-grid.three,.card-grid.four,.steps,.compact-services,.service-detail,.service-groups,.delivery-grid,.timeline-grid,.support-grid,.maintenance-pricing,.tech-grid,.project-grid{grid-template-columns:1fr}.news-pagination{align-items:flex-start;flex-direction:column;padding-left:1.75rem}.project-preview{min-height:280px}.credential-row{grid-template-columns:1fr}.credential-values{justify-content:flex-start}.hero-stats,.promise-strip{grid-template-columns:1fr}.preview-grid{min-height:236px}.site-footer{width:min(100% - 28px,1120px)}.footer-main{grid-template-columns:1fr}.footer-bottom{flex-direction:column}}
