#root{min-height:100svh}:root{--black:#080a0b;--graphite:#101314;--steel-900:#1d2224;--steel-700:#343b3e;--steel-500:#8d969a;--steel-300:#c9ced0;--steel-100:#edf0f1;--white:#fff;--accent:#7fa2b8;--accent-strong:#a9c5d6;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--black);color:var(--steel-100);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{content:"";z-index:-1;background:linear-gradient(120deg, #ffffff14, transparent 24%), repeating-linear-gradient(90deg, #ffffff08 0, #ffffff08 1px, transparent 1px, transparent 8px), radial-gradient(circle at 70% 12%, #7fa2b82e, transparent 36%), var(--black);position:fixed;inset:0}a{color:inherit}img{max-width:100%;display:block}.site-header{z-index:10;width:100%;min-height:76px;padding:0 max(16px, calc((100% - var(--max)) / 2));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080a0bc7;border-bottom:1px solid #c9ced02e;justify-content:space-between;align-items:center;gap:24px;display:flex;position:sticky;top:0}.brand img{width:188px;height:auto}.desktop-nav{color:#edf0f1c7;align-items:center;gap:28px;font-size:.92rem;display:flex}.desktop-nav a,.primary-button,.secondary-button,.contact-list a{text-decoration:none}.desktop-nav a:hover,.contact-list a:hover{color:var(--white)}.contact-list a:hover{color:var(--graphite);background:#10131414}.primary-button,.secondary-button{border-radius:6px;justify-content:center;align-items:center;min-height:44px;font-weight:700;display:inline-flex}.primary-button{background:var(--steel-100);color:var(--black);padding:0 18px}.menu-toggle{width:44px;height:44px;color:var(--steel-100);cursor:pointer;background:#edf0f10f;border:1px solid #edf0f147;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:none}.menu-toggle span{background:currentColor;border-radius:999px;width:18px;height:2px}.secondary-button{color:var(--steel-100);border:1px solid #edf0f152;padding:0 18px}.hero-section{width:min(100% - 32px, var(--max));grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);align-items:center;gap:52px;min-height:760px;margin:0 auto;padding:56px 0 76px;display:grid}.hero-copy{max-width:610px}.hero-logo{width:min(420px,82vw);margin-bottom:34px}h1,h2,h3,p{margin:0}h1{max-width:680px;color:var(--white);letter-spacing:0;font-size:clamp(3rem,7vw,5.9rem);line-height:.9}.hero-copy p{color:#edf0f1c7;max-width:560px;margin-top:28px;font-size:clamp(1.08rem,2vw,1.32rem);line-height:1.55}.hero-copy .service-area-note{color:var(--accent-strong);margin-top:16px;font-size:1rem;font-weight:800}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.primary-button,.secondary-button{min-width:172px}.hero-media{border:1px solid #edf0f133;border-radius:8px;min-height:580px;position:relative;overflow:hidden;box-shadow:0 28px 80px #00000059}.hero-media img{object-fit:cover;width:100%;height:100%;min-height:580px}.intro-band,.benefits-section,.portfolio-section,.contact-section,.map-section{width:min(100% - 32px, var(--max));margin:0 auto;padding:92px 0}.intro-band{border-top:1px solid #c9ced02e;grid-template-columns:.85fr 1.15fr;gap:80px;display:grid}.section-heading span{color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px;font-size:.78rem;font-weight:800;display:block}.section-heading h2{color:var(--white);letter-spacing:0;font-size:clamp(2.1rem,4vw,4.2rem);line-height:1.02}.intro-text{color:#edf0f1c2;gap:24px;font-size:clamp(1.1rem,2vw,1.42rem);line-height:1.55;display:grid}.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:42px;display:grid}.service-card{background:linear-gradient(145deg,#edf0f11f,#edf0f10a);border:1px solid #c9ced02e;border-radius:8px;min-height:160px;padding:22px}.service-card span{background:linear-gradient(90deg, var(--white), var(--steel-500));width:34px;height:3px;margin-bottom:34px;display:block}.service-card h3{color:var(--white);font-size:1.22rem;line-height:1.14}.benefits-section{border-top:1px solid #c9ced02e;border-bottom:1px solid #c9ced02e;grid-template-columns:1fr .9fr;align-items:start;gap:72px;display:grid}.benefits-copy p{color:#edf0f1b8;max-width:640px;margin-top:28px;font-size:1.08rem;line-height:1.65}.benefits-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.benefits-list li{color:var(--white);background:#edf0f114;border:1px solid #c9ced029;border-radius:8px;padding:18px 20px}.centered{text-align:center;max-width:780px;margin:0 auto}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:48px;display:grid}.portfolio-card{background:#edf0f114;border:1px solid #c9ced02e;border-radius:8px;overflow:hidden}.portfolio-card img{aspect-ratio:1.35;object-fit:cover;object-position:top center;width:100%}.portfolio-card div{gap:10px;padding:18px 20px 20px;display:grid}.portfolio-card span,.products-hero-copy span,.product-detail-copy>span{color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:800}.portfolio-card h3{color:var(--white);font-size:1.1rem}.portfolio-card p{color:#edf0f1ad;font-size:.96rem;line-height:1.5}.portfolio-card a,.product-cta{width:fit-content;min-height:40px;color:var(--steel-100);border:1px solid #edf0f14d;border-radius:6px;justify-content:center;align-items:center;margin-top:4px;padding:0 14px;font-weight:800;text-decoration:none;display:inline-flex}.portfolio-card a:hover,.product-cta:hover,.products-index a:hover{background:#edf0f11a}.products-hero,.products-index,.products-detail-list,.catalog-note{width:min(100% - 32px, var(--max));margin:0 auto}.products-hero{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);align-items:center;gap:52px;min-height:620px;padding:56px 0 72px;display:grid}.products-hero-copy{max-width:650px}.products-hero h1{margin-top:18px}.products-hero p{color:#edf0f1c2;max-width:590px;margin-top:28px;font-size:clamp(1.08rem,2vw,1.32rem);line-height:1.55}.products-hero>img{object-fit:cover;border:1px solid #edf0f133;border-radius:8px;width:100%;min-height:520px;box-shadow:0 28px 80px #00000059}.products-index{z-index:8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080a0be6;border-top:1px solid #c9ced02e;border-bottom:1px solid #c9ced02e;flex-wrap:wrap;gap:10px;padding:16px 0;display:flex;position:sticky;top:76px}.products-index a{color:#edf0f1d1;border:1px solid #c9ced033;border-radius:6px;align-items:center;min-height:38px;padding:0 13px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.products-detail-list{gap:32px;padding:56px 0 20px;display:grid}.product-detail{background:#edf0f112;border:1px solid #c9ced02e;border-radius:8px;grid-template-columns:minmax(280px,.92fr) minmax(0,1.08fr);align-items:stretch;gap:36px;padding:clamp(18px,3vw,30px);scroll-margin-top:160px;display:grid}.product-detail-media{background:linear-gradient(135deg,#edf0f11a,#edf0f108);border-radius:8px;overflow:hidden}.product-detail-media img{object-fit:contain;width:100%;height:100%;min-height:360px;padding:clamp(10px,2vw,18px)}.product-detail-copy{flex-direction:column;justify-content:center;gap:18px;display:flex}.product-detail-copy h2{color:var(--white);letter-spacing:0;font-size:clamp(2rem,4vw,3.8rem);line-height:1.02}.product-detail-copy p{color:#edf0f1b8;font-size:1.06rem;line-height:1.65}.product-tags{flex-wrap:wrap;gap:8px;display:flex}.product-tags strong{color:var(--white);border:1px solid #c9ced038;border-radius:6px;padding:8px 10px;font-size:.82rem}.product-detail-copy ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.product-detail-copy li{color:#edf0f1c7;padding-left:18px;line-height:1.45;position:relative}.product-detail-copy li:before{content:"";background:var(--accent-strong);border-radius:999px;width:7px;height:7px;position:absolute;top:.7em;left:0}.catalog-note{border-top:1px solid #c9ced02e;grid-template-columns:.9fr 1.1fr;gap:52px;padding:72px 0 92px;display:grid}.catalog-note p{color:#edf0f1b8;font-size:1.08rem;line-height:1.65}.contact-section{grid-template-columns:.9fr 1.1fr;align-items:stretch;gap:28px;display:grid}.contact-panel{background:var(--steel-100);color:var(--graphite);border-radius:8px;padding:clamp(28px,5vw,54px)}.contact-panel .section-heading span{color:var(--steel-700)}.contact-panel .section-heading h2{color:var(--graphite)}.contact-list{color:var(--graphite);gap:10px;margin-top:32px;font-size:clamp(1rem,1.7vw,1.2rem);line-height:1.35;display:grid}.contact-action{border-radius:6px;grid-template-columns:24px 1fr;align-items:center;gap:12px;min-height:46px;padding:8px 10px;display:grid}.contact-action svg,.hours-title svg{fill:currentColor;flex:none;width:22px;height:22px}.service-area-contact{color:var(--graphite);background:#10131414;border-radius:6px;margin-top:18px;padding:14px 16px;font-weight:800;line-height:1.45}.hours-box{border-top:1px solid #1013142e;margin-top:28px;padding-top:24px}.hours-title{color:var(--graphite);align-items:center;gap:12px;font-size:1rem;display:flex}.hours-box dl{gap:10px;margin:16px 0 0;display:grid}.hours-box div{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:18px;display:grid}.hours-box dt,.hours-box dd{color:#101314c7;margin:0}.hours-box dd{color:var(--graphite);font-weight:800}.todo-note{color:#101314ad;border-top:1px solid #1013142e;margin-top:24px;padding-top:20px;font-size:.95rem;line-height:1.5}.contact-video{background:var(--graphite);border:1px solid #c9ced02e;border-radius:8px;overflow:hidden}.contact-video video{object-fit:cover;background:var(--graphite);width:100%;height:100%;min-height:520px;display:block}.map-section{padding-top:24px}.map-frame{background:linear-gradient(90deg,#edf0f114 1px,#0000 1px) 0 0/42px 42px,linear-gradient(#edf0f114 1px,#0000 1px) 0 0/42px 42px,radial-gradient(circle at 52% 48%,#a9c5d647,#0000 18%),#edf0f114;border:1px solid #c9ced02e;border-radius:8px;margin-top:40px;position:relative;overflow:hidden}.map-frame iframe{opacity:.68;filter:grayscale(.18)contrast(1.05);border:0;width:100%;height:430px;display:block}.map-loaded iframe{opacity:1}.map-fallback{z-index:1;text-align:center;pointer-events:none;opacity:1;place-content:center;gap:10px;padding:28px;transition:opacity .35s,visibility .35s;display:grid;position:absolute;inset:0}.map-loaded .map-fallback{visibility:hidden;opacity:0}.map-fallback:before{content:"";background:var(--steel-100);border-radius:999px 999px 999px 0;width:18px;height:18px;margin:0 auto 2px;transform:rotate(-45deg);box-shadow:0 0 0 10px #edf0f11f}.map-pin{color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}.map-fallback strong{max-width:560px;color:var(--white);font-size:clamp(1.2rem,3vw,2.4rem);line-height:1.05}.map-fallback small{color:#edf0f1ad;font-size:.94rem}.map-link{width:fit-content;min-height:44px;color:var(--steel-100);border:1px solid #edf0f152;border-radius:6px;justify-content:center;align-items:center;margin:18px auto 0;padding:0 18px;font-weight:700;text-decoration:none;display:flex}@media (width<=900px){.site-header{min-height:68px;padding-inline:12px}.brand img{width:142px}.menu-toggle{display:inline-flex}.desktop-nav{background:#080a0bf5;border:1px solid #c9ced02e;border-radius:8px;flex-direction:column;align-items:stretch;gap:0;padding:8px;display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 24px 60px #0000006b}.desktop-nav.is-open{display:flex}.desktop-nav a{border-radius:6px;padding:14px 16px}.desktop-nav a:hover{background:#edf0f114}.hero-section,.intro-band,.benefits-section,.contact-section,.products-hero,.product-detail,.catalog-note{grid-template-columns:1fr}.hero-section{width:min(100% - 24px, var(--max));gap:36px;min-height:auto;padding:48px 0 64px}.hero-media,.hero-media img{min-height:360px}.products-hero{gap:36px;min-height:auto;padding:48px 0 64px}.products-hero>img,.product-detail-media img{min-height:340px}.intro-band,.benefits-section,.portfolio-section,.contact-section,.map-section,.products-hero,.products-index,.products-detail-list,.catalog-note{width:min(100% - 24px, var(--max));padding:64px 0}.products-index{padding:12px 0;top:68px}.products-detail-list{padding-top:36px}.catalog-note{gap:24px}.map-section{padding-top:16px}.intro-band,.benefits-section{gap:34px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-grid{grid-template-columns:1fr}.contact-video video{min-height:420px}}@media (width<=560px){.hero-logo{width:100%;margin-bottom:26px}.hero-actions,.primary-button,.secondary-button,.portfolio-card a,.product-cta{width:100%}.services-grid{grid-template-columns:1fr}.service-card{min-height:124px}}
