.page-loader{z-index:1000;color:#eaf3fb;opacity:0;visibility:hidden;pointer-events:none;background:#073a7b;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:fixed;inset:0}.page-loader img{filter:brightness(0)invert();width:139px;height:auto;animation:1.4s ease-in-out infinite alternate renq-breathe}.page-loader span{letter-spacing:.22em;text-transform:uppercase;font-size:.7rem;font-weight:800}.page-loader i{background:#ffffff42;width:100px;height:2px;display:block;position:relative;overflow:hidden}.page-loader i:after{content:"";background:#5bc3f3;animation:1.5s ease-in-out infinite renq-progress;position:absolute;inset:0;transform:translate(-100%)}.loading-pending .page-loader{pointer-events:auto;animation:.2s .45s both renq-loader-enter}@keyframes renq-loader-enter{to{opacity:1;visibility:visible}}@keyframes renq-breathe{to{opacity:.55;transform:scale(.97)}}@keyframes renq-progress{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.page-loader img,.page-loader i:after{animation:none}.page-loader i:after{transform:none}}.header-shell{z-index:100;background:#fff;position:sticky;top:0;box-shadow:0 8px 26px #102a4414}.site-progress{z-index:250;transform-origin:0;pointer-events:none;background:#58b9eb;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.footer-credit{white-space:nowrap}.footer-credit:hover,.footer-credit:focus-visible{color:#fff;text-underline-offset:3px;text-decoration:underline}@media (width<=720px){.footer-bottom div{flex-wrap:wrap}}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";transform-origin:0;background:#0b6bb5;height:2px;transition:transform .25s;position:absolute;bottom:-.52rem;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.desktop-nav a.active:after{transform:scaleX(1)}html{scroll-padding-top:100px}.page-hero{isolation:isolate;position:relative;overflow:hidden}.page-hero:before{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#b6e3fa66,#0000 68%);border:1px solid #126cb526;border-radius:50%;width:min(46vw,610px);position:absolute;top:-52%;right:-7%;box-shadow:0 0 0 65px #5fa9d60b,0 0 0 145px #5fa9d609}.page-hero .container{z-index:1;position:relative}.contact-methods a{transition:transform .3s,border-color .3s,box-shadow .3s}.contact-methods a:hover{border-color:#0b6bb5;transform:translateY(-4px);box-shadow:0 18px 36px #0e416313}.hero-copy>*,.page-hero:not(.service-hero) .container>*,.service-hero-grid>*{animation:.7s both enter-soft}.service-hero-grid>:nth-child(2){animation-delay:.12s}.hero-copy>:nth-child(2),.page-hero:not(.service-hero) .container>:nth-child(2){animation-delay:80ms}.hero-copy>:nth-child(3),.page-hero:not(.service-hero) .container>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4),.page-hero:not(.service-hero) .container>:nth-child(4){animation-delay:.24s}.motion-ready .reveal{transition:opacity .55s,transform .55s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0s)}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(22px)}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.card,.project-feature,.photo-frame{transition:box-shadow .3s,transform .3s}.card:hover{transform:translateY(-3px);box-shadow:0 16px 35px #0e416315}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #5cb4ed}.quick-actions{display:none}@media (width<=859px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.quick-actions{z-index:90;padding:.55rem .7rem calc(.55rem + env(safe-area-inset-bottom,0px));background:#102a44;gap:.55rem;transition:transform .35s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(120%);box-shadow:0 -10px 30px #102a4426}.quick-actions.is-visible{transform:none}.quick-actions a{text-align:center;color:#fff;background:#245073;border-radius:6px;flex:1;place-items:center;min-height:48px;padding:.5rem;font-size:.85rem;font-weight:700;display:grid}.quick-actions a:first-child{background:#0754a1}}@keyframes enter-soft{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.card:hover{transform:none}}@media (prefers-reduced-motion:reduce){.quick-actions{transition:none}.hero-copy>*,.page-hero:not(.service-hero) .container>*,.service-hero-grid>*{animation:none}.motion-ready .reveal{transition:none}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}.card,.project-feature,.photo-frame{transition:none}.card:hover{box-shadow:none;transform:none}.contact-methods a{transition:none}.contact-methods a:hover{box-shadow:none;transform:none}}
