body{overflow-x:hidden}section{padding:7rem 3rem}h1{letter-spacing:-.02em;color:var(--foam);margin-bottom:2.5rem;font-family:DM Sans,sans-serif;font-size:clamp(2.8rem,6.5vw,5rem);font-weight:300;line-height:1.08}h1 strong{color:var(--shore-pale);font-weight:600}.hero{align-items:center;min-height:100vh;padding:10rem 3rem 6rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(#4a8b9c0f 0%,#0000 60%),radial-gradient(at 80% 30%,#5ca3b50a 0%,#0000 50%);width:70%;height:120%;animation:12s ease-in-out infinite alternate heroGlow;position:absolute;top:-20%;right:-10%}@keyframes heroGlow{0%{opacity:.7;transform:translate(0)scale(1)}to{opacity:1;transform:translate(-2%,3%)scale(1.05)}}.hero-grid{pointer-events:none;background-image:linear-gradient(#4a8b9c08 1px,#0000 1px),linear-gradient(90deg,#4a8b9c08 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 60%,#000 20%,#0000 70%);mask-image:radial-gradient(at 60%,#000 20%,#0000 70%)}.hero-content{z-index:2;max-width:1050px;position:relative}.hero-tag{letter-spacing:.15em;text-transform:uppercase;color:var(--shore);opacity:0;margin-bottom:2rem;font-family:Space Mono,monospace;font-size:.75rem;animation:.6s .2s forwards fadeInUp}.hero-tag:before{content:"// ";opacity:.5}h1{opacity:0;animation:.6s .35s forwards fadeInUp}.hero-sub{color:var(--salt-dim);opacity:0;max-width:520px;margin-bottom:3.5rem;font-size:1.1rem;line-height:1.8;animation:.6s .5s forwards fadeInUp}.hero-actions{opacity:0;align-items:center;gap:1.5rem;animation:.6s .65s forwards fadeInUp;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.btn-ghost{letter-spacing:.08em;text-transform:uppercase;color:var(--salt-dim);border-bottom:1px solid var(--iron-mid);padding:1rem 0;font-family:Space Mono,monospace;font-size:.8rem;text-decoration:none;transition:color .3s,border-color .3s}.btn-ghost:hover{color:var(--shore-light);border-color:var(--shore-light)}.hero-particle{background:var(--shore);opacity:0;pointer-events:none;border-radius:50%;width:2px;height:2px;animation:8s ease-in-out infinite float;position:absolute}@keyframes float{0%,to{opacity:0;transform:translateY(0)}20%{opacity:.4}50%{opacity:.2}80%{opacity:.4}to{opacity:0;transform:translateY(-60px)}}.hero-aside-inline{display:none}.hero-aside-abs{text-align:right;z-index:2;opacity:0;animation:.6s .9s forwards fadeInUp;position:absolute;bottom:4rem;right:3rem}.hero-aside-label{letter-spacing:.15em;text-transform:uppercase;color:var(--salt-dark);margin-bottom:.3rem;font-family:Space Mono,monospace;font-size:.65rem}.hero-aside-value{color:var(--shore);font-family:Space Mono,monospace;font-size:.85rem}.services{border-top:1px solid var(--iron-mid)}.services-layout{grid-template-columns:1fr 1.8fr;align-items:start;gap:4rem;display:grid}.services-intro p{color:var(--salt-dim);margin-bottom:2rem;font-size:1.05rem;line-height:1.7}.health-check-link{letter-spacing:.06em;color:var(--shore);border-bottom:1px solid #4a8b9c4d;padding-bottom:.15rem;font-family:Space Mono,monospace;font-size:.75rem;text-decoration:none;transition:color .3s,border-color .3s}.health-check-link:hover{color:var(--shore-light);border-color:var(--shore-light)}.service-items{flex-direction:column;display:flex}.service-item{border-top:1px solid var(--iron-mid);grid-template-columns:1fr 1.4fr;align-items:start;gap:2rem;margin:0 -1.5rem;padding:2.8rem 1.5rem;transition:background .3s;display:grid}.service-item:last-child{border-bottom:1px solid var(--iron-mid)}.service-item:hover{background:#4a8b9c08}.service-name{color:var(--foam);letter-spacing:-.01em;font-size:1.35rem;font-weight:500;transition:color .3s}.service-item:hover .service-name{color:var(--shore-pale)}.service-tech{color:var(--salt-dark);letter-spacing:.03em;margin-top:.5rem;font-family:Space Mono,monospace;font-size:.65rem}.service-price{align-items:baseline;gap:.35rem;margin-top:.5rem;display:flex}.service-price-from{letter-spacing:.03em;text-transform:uppercase;color:var(--salt-dark);font-family:Space Mono,monospace;font-size:.65rem}.service-price-amount{color:var(--shore-light);letter-spacing:.02em;font-family:Space Mono,monospace;font-size:1.1rem;font-weight:700}.service-desc{color:var(--salt-dim);font-size:.95rem;line-height:1.65}.stack{border-top:1px solid var(--iron-mid);background:var(--iron-light);position:relative}.stack:before{content:"";pointer-events:none;background:radial-gradient(at 20%,#4a8b9c08 0%,#0000 50%);position:absolute;inset:0}.stack-top{grid-template-columns:1fr 1.5fr;align-items:start;gap:4rem;display:grid;position:relative}.stack-desc{color:var(--salt-dim);margin-top:1rem;line-height:1.7}.stack-list{grid-template-columns:1fr 1fr 1fr;gap:2.5rem;display:grid}.stack-group h4{letter-spacing:.15em;text-transform:uppercase;color:var(--shore);border-bottom:1px solid var(--iron-mid);margin-bottom:1rem;padding-bottom:.5rem;font-family:Space Mono,monospace;font-size:.75rem}.stack-group ul{list-style:none}.stack-group li{color:var(--salt-dim);padding:.4rem 0;font-size:.95rem;transition:color .2s,padding-left .2s}.stack-group li:hover{color:var(--foam);padding-left:.3rem}.approach{border-top:1px solid var(--iron-mid);background:var(--iron-light)}.approach-layout{grid-template-columns:1fr .9fr;align-items:start;gap:4rem;display:grid}.approach-text{order:1}.approach-text p{color:var(--salt-dim);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.75}.approach-list{flex-direction:column;display:flex;position:relative}.approach-list:before{content:"";background:linear-gradient(to bottom, var(--shore), var(--iron-mid));opacity:.4;width:1px;position:absolute;top:2.2rem;bottom:2.2rem;left:2.5px}.approach-item{border-top:1px solid var(--iron-mid);grid-template-columns:auto 1fr;align-items:baseline;gap:1.4rem;margin:0 -1rem;padding:2rem 1rem;transition:background .3s;display:grid}.approach-item:last-child{border-bottom:1px solid var(--iron-mid)}.approach-item:hover{background:#4a8b9c08}.approach-marker{background:var(--shore);z-index:1;flex-shrink:0;width:6px;height:6px;margin-top:.55rem;transition:box-shadow .3s;position:relative}.approach-item:hover .approach-marker{box-shadow:0 0 8px #4a8b9c80}.approach-item h3{color:var(--foam);margin-bottom:.4rem;font-size:1.15rem;font-weight:500}.approach-item p{color:var(--salt-dim);font-size:.9rem;line-height:1.6}.contact{border-top:1px solid var(--iron-mid)}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.contact-info p{color:var(--salt-dim);margin-bottom:2.5rem;font-size:1.05rem;line-height:1.7}.contact-details{flex-direction:column;gap:1.5rem;margin-bottom:2.5rem;display:flex}.contact-detail-label{letter-spacing:.15em;text-transform:uppercase;color:var(--salt-dark);margin-bottom:.25rem;font-family:Space Mono,monospace;font-size:.65rem}.contact-detail a,.contact-detail span{color:var(--foam);font-size:1rem;text-decoration:none;transition:color .2s}.contact-detail a:hover{color:var(--shore-light)}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-group textarea{resize:vertical;min-height:120px}.check-group{flex-wrap:wrap;gap:.4rem;display:flex}.check-option{background:var(--iron);border:1px solid var(--iron-mid);cursor:pointer;color:var(--salt-dim);text-transform:none;letter-spacing:0;padding:.4rem .75rem;font-size:.8rem;transition:border-color .2s,background .2s,color .2s}.check-option:hover{border-color:var(--shore);color:var(--salt)}.check-option:has(input:checked){border-color:var(--shore);color:var(--foam);background:#4a8b9c1f}.check-option input[type=checkbox]{display:none}.check-option span{cursor:pointer}.form-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=960px){section{padding:5rem 1.5rem}.hero{padding:7rem 1.5rem 4rem}h1{margin-bottom:1.5rem;font-size:clamp(2rem,7.5vw,3rem);line-height:1.12}h1 br{display:block}.hero-sub{margin-bottom:2.5rem;font-size:1rem}.hero-aside-abs{display:none}.hero-aside-inline{opacity:0;margin-top:3rem;animation:.6s .8s forwards fadeInUp;display:block}.services-layout,.stack-top,.approach-layout,.contact-grid{grid-template-columns:1fr;gap:2.5rem}.service-item{grid-template-columns:1fr;gap:.8rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn-primary{text-align:center}.approach-list:before{display:none}}@media (width<=700px){.stack-list{grid-template-columns:1fr 1fr}}@media (width<=480px){.stack-list,.form-row{grid-template-columns:1fr}}
