:root{color-scheme:light;--paper:#F6F4EF;--ink:#111;--muted:#75736f;--rule:#d4d1cb}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.site-shell{min-height:100svh;display:flex;flex-direction:column;padding:0 clamp(22px,4.15vw,76px)}.site-header{position:relative;min-height:100px;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.header-brand{text-decoration:none;font-weight:900;letter-spacing:-.06em;font-size:clamp(18px,1.75vw,26px)}.header-brand sup{font-size:.37em;letter-spacing:0;vertical-align:top;margin-left:2px}.header-descriptor{font-size:clamp(9px,.75vw,12px);letter-spacing:.08em;font-weight:600;text-align:center;white-space:nowrap}.menu-toggle{justify-self:end;width:44px;height:44px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;cursor:pointer}.menu-toggle span{width:25px;height:2px;background:var(--ink);transition:transform .2s ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.menu-toggle:focus-visible,.contact-button:focus-visible,.header-brand:focus-visible,.site-menu a:focus-visible{outline:3px solid #4b69b1;outline-offset:4px}.site-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:5;background:var(--paper);border:1px solid var(--rule);padding:24px;min-width:min(330px,85vw);box-shadow:0 12px 30px #00000012}.site-menu[hidden]{display:none}.site-menu a{display:block;font-size:18px;font-weight:700;text-decoration:none;margin-bottom:16px}.site-menu span{display:block;color:var(--muted);font-size:12px;line-height:1.6}.hero{flex:1;min-height:570px;display:flex;flex-direction:column;justify-content:space-between}.hero-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px 0 8px}.wordmark{display:flex;justify-content:center;align-items:center;white-space:nowrap;margin:0;font-family:Arial Black,Arial,Helvetica,sans-serif;font-weight:900;font-size:clamp(64px,15.2vw,260px);line-height:1.06;letter-spacing:-.092em;padding:.04em .092em .06em 0;overflow:visible}.letter{display:inline-block;animation:arrive 1.2s cubic-bezier(.19,1,.22,1) both}.letter:nth-child(1){--dx:-65px;animation-delay:0ms}.letter:nth-child(2){--dx:46px;animation-delay:60ms}.letter:nth-child(3){--dx:-50px;animation-delay:120ms}.letter:nth-child(4){--dx:60px;animation-delay:180ms}.letter:nth-child(5){--dx:-38px;animation-delay:240ms}.letter:nth-child(6){--dx:48px;animation-delay:300ms}@keyframes arrive{0%{opacity:0;transform:translateX(var(--dx));filter:blur(9px)}65%{opacity:1;filter:blur(0)}100%{opacity:1;transform:translateX(0);filter:blur(0)}}.hero-subtitle{margin:clamp(15px,2vw,28px) 0 0;font-size:clamp(18px,2vw,29px);font-weight:400;font-style:italic;letter-spacing:-.035em;text-align:center}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;padding:0 0 clamp(34px,5vh,60px)}.company-summary p{font-size:clamp(18px,1.65vw,25px);font-weight:600;line-height:1.22;margin:0}.company-summary .services{font-size:clamp(11px,.95vw,14px);color:var(--muted);font-weight:400;margin-top:15px;line-height:1.5}.contact-button{border:1.5px solid var(--ink);border-radius:999px;text-decoration:none;padding:18px 34px;min-width:168px;text-align:center;font-size:clamp(14px,1.15vw,17px);font-weight:600;white-space:nowrap;transition:background .2s,color .2s}.contact-button:hover{background:var(--ink);color:var(--paper)}.site-footer{border-top:1px solid var(--rule);min-height:67px;display:flex;align-items:center}.site-footer small{color:var(--muted);font-size:11px;letter-spacing:.015em}@media(max-width:760px){.site-shell{padding:0 22px}.site-header{min-height:76px;grid-template-columns:1fr auto}.header-descriptor{display:none}.hero{min-height:calc(100svh - 143px)}.hero-center{padding:50px 0 30px}.wordmark{font-size:clamp(51px,15.2vw,116px);letter-spacing:-.092em}.hero-subtitle{font-size:clamp(16px,3.7vw,24px);margin-top:18px}.hero-bottom{padding-bottom:35px;align-items:flex-start;flex-direction:column;gap:28px}.company-summary p{font-size:20px}.company-summary .services{font-size:12px}.contact-button{padding:15px 27px;min-width:154px}.site-footer{min-height:67px}}@media(max-width:390px){.site-shell{padding:0 16px}.wordmark{font-size:15.2vw}.company-summary p{font-size:18px}.company-summary .services{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}.letter{filter:none!important;transform:none!important;opacity:1!important}}

/* Consistent oversized wordmark rendering across Safari and Chrome */
.wordmark,.wordmark .letter{overflow:visible;-webkit-font-smoothing:antialiased}
.wordmark .letter{vertical-align:baseline;transform-origin:center center}


/* Mobile-only alignment: desktop retains the original asymmetric composition. */
@media (max-width: 760px) {
  .hero-bottom {
    align-items: center;
    text-align: center;
  }
  .company-summary {
    width: 100%;
    text-align: center;
  }
  .company-summary p,
  .company-summary .services {
    text-align: center;
  }
  .company-summary .services {
    overflow-wrap: anywhere;
  }
  .contact-button {
    align-self: center;
  }
  .site-footer {
    justify-content: center;
    text-align: center;
  }
}

/* V4: stable animated typography, touch targets, and browser accessibility */
.letter.animation-complete{will-change:auto;}
@media (hover:hover){.menu-toggle:hover span{opacity:.72}}
@media (max-width:760px){.hero-bottom{width:100%}.contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px}.company-summary{max-width:100%}}
@media (prefers-reduced-motion:reduce){.letter{will-change:auto}}
