:root{color-scheme:light;--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font-family:var(--font-sans);background:#07111f;color:#102033}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#07111f;font-family:var(--font-sans)}a{color:inherit;text-decoration:none}a,button{min-height:44px}:focus-visible{outline:3px solid #f59e0b;outline-offset:4px}.hidden{display:none!important}.ts-logo{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#22d3ee,#f59e0b);color:#07111f;font-weight:950;letter-spacing:-.08em;box-shadow:0 16px 36px #22d3ee40}.gate{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;background:radial-gradient(circle at 18% 12%,rgb(34 211 238 / 20%),transparent 32%),radial-gradient(circle at 80% 80%,rgb(245 158 11 / 18%),transparent 30%),linear-gradient(135deg,#020617,#0f2238);padding:1.25rem;color:#fff}.gate.flex{display:flex}.gate-card{width:min(100%,26rem);border:1px solid rgb(255 255 255 / 16%);border-radius:28px;background:#07111fd6;box-shadow:0 30px 90px #0000007a;padding:1.4rem;text-align:left;backdrop-filter:blur(16px)}.gate-card h2{margin:.9rem 0 .45rem;font-size:clamp(1.75rem,8vw,2.65rem);line-height:.98;letter-spacing:-.055em}.gate-card p{color:#cbd5e1;line-height:1.5}.gate-card input{width:100%;min-height:52px;margin:.8rem 0;border:1px solid #334155;border-radius:16px;background:#020617;color:#fff;padding:0 1rem;font-size:1.05rem}.gate-card button{width:100%;min-height:54px;border:0;border-radius:16px;background:#22d3ee;color:#07111f;font-weight:950;cursor:pointer}.site-shell{min-height:100vh;overflow-x:clip;background:linear-gradient(90deg,rgb(255 255 255 / 4%) 1px,transparent 1px),linear-gradient(180deg,#06101f,#0b1b2f 52%,#eaf6fb 52%,#f6fbff);background-size:38px 38px,auto;color:#f8fbff;padding:.9rem .9rem 5.7rem}.topbar{position:sticky;top:.75rem;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.75rem;max-width:1180px;margin:0 auto;padding:.55rem;border:1px solid rgb(255 255 255 / 12%);border-radius:24px;background:#07111fc7;box-shadow:0 18px 60px #0000003d;backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:.65rem;min-width:0}.brand-mark{display:inline-grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border-radius:14px;background:#f8fbff;color:#07111f;font-weight:950;letter-spacing:-.08em}.brand strong,.brand small{display:block}.brand small{margin-top:.1rem;color:#a8c2d8;font-size:.72rem}.top-call{display:none;align-items:center;justify-content:center;border-radius:999px;background:#22d3ee;color:#07111f;padding:0 1rem;font-weight:900;white-space:nowrap}.hero{display:grid;gap:1.2rem;max-width:1180px;margin:0 auto;padding:3.2rem 0 2rem}.eyebrow,.section-kicker{margin:0 0 .75rem;color:#67e8f9;font-size:.76rem;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.hero h1{max-width:820px;margin:0;font-size:clamp(2.85rem,15vw,6.8rem);line-height:.87;letter-spacing:-.085em}.hero-lead{max-width:650px;margin:1.05rem 0 0;color:#c8d8e6;font-size:clamp(1.02rem,4.5vw,1.28rem);line-height:1.58}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.3rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border-radius:999px;padding:0 1.05rem;font-weight:950;text-align:center}.btn.primary{background:#22d3ee;color:#07111f;box-shadow:0 18px 44px #22d3ee38}.btn.secondary{border:1px solid rgb(255 255 255 / 18%);background:#ffffff14;color:#f8fbff}.btn.secondary.light{border-color:#07111f24;background:#fff;color:#07111f}.trust-strip{display:grid;grid-template-columns:1fr;gap:.65rem;margin:1.35rem 0 0}.trust-strip div{border:1px solid rgb(255 255 255 / 12%);border-radius:20px;background:#ffffff12;padding:.9rem}.trust-strip dt{color:#8ddfeb;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.trust-strip dd{margin:.25rem 0 0;color:#fff;font-weight:850}.hvac-card{position:relative;min-height:360px;overflow:hidden;border:1px solid rgb(255 255 255 / 14%);border-radius:36px;background:radial-gradient(circle at 24% 18%,rgb(34 211 238 / 34%),transparent 26%),radial-gradient(circle at 78% 76%,rgb(245 158 11 / 24%),transparent 26%),linear-gradient(145deg,#12273d,#07111f 68%);box-shadow:inset 0 1px #ffffff29,0 28px 80px #0000004d}.unit{position:absolute;top:2.2rem;left:1.3rem;right:1.3rem;display:grid;gap:.65rem;border:1px solid rgb(255 255 255 / 16%);border-radius:26px;background:#ffffff1f;padding:1.05rem}.vent{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,#ffffffd6,#67e8f947)}.airflow{position:absolute;left:7%;right:7%;height:92px;border:3px solid #67e8f9;border-left:0;border-right:0;border-bottom:0;border-radius:50%;opacity:.6}.flow-one{top:170px;transform:rotate(-7deg)}.flow-two{top:218px;transform:rotate(8deg);opacity:.38}.thermostat{position:absolute;right:1.4rem;bottom:1.25rem;display:grid;place-items:center;width:128px;height:128px;border:8px solid #f59e0b;border-radius:50%;background:#f8fbff;color:#07111f;box-shadow:0 18px 50px #0000004d}.thermostat span{font-size:2.25rem;font-weight:950;letter-spacing:-.08em}.thermostat small{margin-top:-2.4rem;color:#546477;font-size:.72rem;font-weight:800}.service-chip{position:absolute;left:1.2rem;bottom:4.5rem;border-radius:999px;background:#22d3ee;color:#07111f;padding:.55rem .9rem;font-weight:950}.service-chip.alt{bottom:1.35rem;background:#f59e0b}.panel-grid{display:grid;gap:1rem;max-width:1180px;margin:0 auto;color:#07111f}.service-panel,.area-panel,.contact-band{border:1px solid rgb(7 17 31 / 10%);border-radius:32px;background:#ffffffeb;box-shadow:0 24px 70px #0f172a1a;padding:1.25rem}.service-panel h2,.area-panel h2,.contact-band h2{margin:0;color:#07111f;font-size:clamp(2rem,9vw,4rem);line-height:.95;letter-spacing:-.075em}.service-panel p,.area-panel p,.contact-band p{color:#475569;line-height:1.6}.service-list{display:grid;gap:.8rem;margin-top:1.2rem}.service-item{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:start;border:1px solid #d8edf5;border-radius:24px;background:#f2fbff;padding:1rem}.service-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#07111f;color:#67e8f9}.service-item h3{margin:0;font-size:1.18rem;letter-spacing:-.03em}.service-item p{margin-bottom:0}.mini-card{display:grid;gap:.3rem;margin-top:1.1rem;border-radius:24px;background:linear-gradient(135deg,#07111f,#12304b);color:#fff;padding:1.1rem}.mini-card span{color:#c8d8e6;line-height:1.5}.contact-band{display:grid;gap:1rem;max-width:1180px;margin:1rem auto 0;background:linear-gradient(135deg,#dff8ff,#fff7e6)}.contact-actions{margin-top:0}.footer{display:grid;gap:1rem;max-width:1180px;margin:1rem auto 0;padding:1.2rem .2rem 0;color:#304256}.footer strong{color:#07111f}.footer p{margin:.35rem 0 0;line-height:1.5}.footer-details{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.footer-details a,.footer-details span{display:inline-flex;align-items:center;min-height:38px;border-radius:999px;background:#fff;color:#304256;padding:.35rem .7rem;font-size:.9rem}.sticky-call{position:fixed;right:.85rem;bottom:.85rem;left:auto;z-index:30;display:inline-flex;align-items:center;justify-content:center;min-height:58px;border-radius:999px;background:#22d3ee;color:#07111f;padding:0 1.15rem;font-weight:950;box-shadow:0 18px 44px #07111f47}@media(max-width:559px){.sticky-call{display:none}}@media(min-width:560px){.top-call{display:inline-flex}.trust-strip{grid-template-columns:repeat(3,1fr)}}@media(min-width:860px){.site-shell{padding:1.25rem 1.25rem 2.5rem}.hero{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;padding:5rem 0 4rem}.hvac-card{min-height:520px}.panel-grid{grid-template-columns:1.16fr .84fr}.service-panel,.area-panel,.contact-band{padding:2rem}.contact-band{grid-template-columns:1fr auto;align-items:center}.footer{grid-template-columns:1fr auto;align-items:start}.sticky-call{display:none}}@media(prefers-reduced-motion:no-preference){.airflow{animation:breathe 5s ease-in-out infinite}.flow-two{animation-delay:-1.8s}@keyframes breathe{0%,to{transform:translate(-4px) scaleX(.96)}50%{transform:translate(8px) scaleX(1.02)}}}
