body{margin:0}
a{color:#0B0B0B;text-decoration:none}a:hover{color:#4A4A4A}
@keyframes lwUp{from{transform:translateY(110%)}to{transform:none}}
@keyframes lwMark{from{background-size:0% .26em}to{background-size:100% .26em}}
@keyframes lwFade{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes lwDown{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@keyframes lwPulse{0%{box-shadow:0 0 0 0 rgba(200,255,0,.7)}70%{box-shadow:0 0 0 10px rgba(200,255,0,0)}100%{box-shadow:0 0 0 0 rgba(200,255,0,0)}}
@keyframes lwMq{to{transform:translateX(-50%)}}
@keyframes lwInd{0%,100%{transform:translateX(0)}50%{transform:translateX(64px)}}
@keyframes lwSpin{to{transform:rotate(360deg)}}
@keyframes lwDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-12%,8%) scale(1.15)}}
@keyframes lwFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-24px) rotate(-4deg)}}
@keyframes lwRv{from{opacity:0;transform:translateY(56px)}to{opacity:1;transform:none}}
@keyframes lwGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
html{scroll-behavior:smooth}
section[id]{scroll-margin-top:100px}
.lw-nav a{background-image:linear-gradient(#C8FF00,#C8FF00);background-repeat:no-repeat;background-position:0 88%;background-size:0% .5em;padding:0 2px;transition:background-size .4s cubic-bezier(.2,.7,.1,1)}
.lw-nav a:hover,.lw-nav a:focus-visible{background-size:100% .5em;color:#0B0B0B}
.lw-hd{animation:lwDown .9s cubic-bezier(.2,.7,.1,1) .1s both}
.lw-wm{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.lw-wi{display:inline-block;animation:lwUp 1s cubic-bezier(.2,.7,.1,1) both}
.lw-mk{background-repeat:no-repeat;background-position:0 86%;background-size:100% .26em;animation:lwUp 1s cubic-bezier(.2,.7,.1,1) .22s both,lwMark .9s cubic-bezier(.7,0,.2,1) 1.2s both}
.lw-fi{animation:lwFade 1s cubic-bezier(.2,.7,.1,1) both}
.lw-pulse{animation:lwPulse 2.2s ease-out infinite}
.lw-mq{display:flex;width:max-content;animation:lwMq 32s linear infinite}
.lw-ticker:hover .lw-mq{animation-play-state:paused}
.lw-ind{animation:lwInd 3.2s cubic-bezier(.6,0,.3,1) infinite}
.lw-btn{transition:transform .35s cubic-bezier(.2,.7,.1,1),background-color .3s,color .3s}
.lw-btn:hover{transform:translateY(-3px)}
.lw-btn .lw-ic{transition:transform .45s cubic-bezier(.2,.7,.1,1)}
.lw-btn:hover .lw-ic{transform:translateX(5px)}
.lw-ghost{background-color:transparent;color:#0B0B0B}
.lw-ghost:hover{background-color:#0B0B0B;color:#F7F5F1}
.lw-card .lw-cv{transition:transform .9s cubic-bezier(.2,.7,.1,1)}
.lw-card:hover .lw-cv{transform:scale(.975)}
.lw-card .lw-cvt{transition:transform 1.1s cubic-bezier(.2,.7,.1,1)}
.lw-card:hover .lw-cvt{transform:translateY(-10px)}
.lw-card .lw-tag{opacity:0;transform:translateY(10px);transition:opacity .4s,transform .5s cubic-bezier(.2,.7,.1,1)}
.lw-card:hover .lw-tag{opacity:1;transform:none}
.lw-spin{animation:lwSpin 18s linear infinite}
.lw-card:hover .lw-spin{animation-duration:4s}
.lw-drift{animation:lwDrift 12s ease-in-out infinite}
.lw-row{position:relative}
.lw-row:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#0B0B0B;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.1,1)}
.lw-row:hover:after{transform:scaleX(1)}
.lw-row .lw-nm{transition:transform .5s cubic-bezier(.2,.7,.1,1)}
.lw-row:hover .lw-nm{transform:translateX(18px)}
.lw-row .lw-ar{transition:background-color .35s,transform .5s cubic-bezier(.2,.7,.1,1)}
.lw-row:hover .lw-ar{background-color:#C8FF00;transform:rotate(45deg)}
.lw-svc{position:relative}
.lw-svc:before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:#C8FF00;transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.2,.7,.1,1)}
.lw-svc:hover:before{transform:scaleX(1)}
.lw-svc h3{transition:transform .5s cubic-bezier(.2,.7,.1,1)}
.lw-svc:hover h3{transform:translateX(8px)}
.lw-float{animation:lwFloat 10s ease-in-out infinite}
.lw-prog{transform-origin:left}
@supports (animation-timeline: view()){
.lw-rv{animation:lwRv linear both;animation-timeline:view();animation-range:entry 0% cover 26%}
.lw-prog{animation:lwGrow linear both;animation-timeline:view();animation-range:entry 30% cover 50%}
}
.lw-in{width:100%;box-sizing:border-box;min-height:52px;padding:14px 16px;border:1px solid #D9D6CF;border-radius:12px;background:#FFFFFF;color:#0B0B0B;font:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}
.lw-in:focus{outline:none;border-color:#0B0B0B;box-shadow:0 0 0 3px rgba(200,255,0,.7)}
.lw-modal{animation:lwFade .45s cubic-bezier(.2,.7,.1,1) both}
.lw-x{transition:transform .4s cubic-bezier(.2,.7,.1,1),background-color .3s}.lw-x:hover{transform:rotate(90deg);background-color:#C8FF00}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* ---- site additions ---- */
html{-webkit-text-size-adjust:100%}
body{background:#F7F5F1}
*,*:before,*:after{box-sizing:border-box}
img{max-width:100%}
button{-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}
#lwForm:not([hidden]){display:flex}
#lwMenu:not([hidden]){display:flex}
.lw-burger{display:none}
.lw-hero{min-height:max(720px,100vh)!important;min-height:max(720px,100svh)!important}
:focus-visible{outline:2px solid #0B0B0B;outline-offset:3px}
.lw-contact :focus-visible,.lw-menu :focus-visible,#services :focus-visible{outline-color:#C8FF00}
.lw-menu{animation:lwFade .35s cubic-bezier(.2,.7,.1,1) both}
.lw-mi{animation:lwFade .6s cubic-bezier(.2,.7,.1,1) both}
body.lw-lock{overflow:hidden}
.lw-sending{opacity:.6;pointer-events:none}

@media (max-width: 760px){
  .lw-header{padding:14px 20px!important;gap:12px!important}
  .lw-nav,.lw-hcta{display:none!important}
  .lw-burger{display:grid}
  .lw-logo-tile{width:40px!important;height:40px!important;border-radius:10px!important}
  .lw-logo-tile img{width:25px!important}
  .lw-logo-word{height:30px!important}
  .lw-hero{min-height:max(680px,100svh)!important;margin-top:-73px!important;padding-top:73px!important}
  .lw-h1{font-size:46px!important;line-height:.98!important}
  .lw-dom{display:none!important}
  .lw-about{order:-1;padding-bottom:0!important}
  .lw-photo{flex:1 1 100%!important;min-width:0!important;margin:28px 12px -1px!important}
  .lw-steps{margin-inline:-8px!important;flex-direction:column}
  .lw-steps>div{flex:none!important}
  .lw-hero-btns{margin-left:0!important;width:100%;flex-direction:column}
  .lw-hero-btns>*{justify-content:center}
  .lw-contact{text-align:center}
  .lw-contact-row{justify-content:center;flex-direction:column}
  .lw-footer{flex-direction:column;justify-content:center!important}
  .lw-docs{flex-direction:column;align-items:center;gap:12px!important}
}
