:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#222;--muted:#565656;--paper:#f7f7f7;--blue:#2a62a7;--night:#111;--content-width:1120px;--page-gutter:clamp(20px, 4vw, 42px);--ease-out:cubic-bezier(.2, .7, .25, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--paper);width:100%;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible{outline-offset:4px;outline:3px solid #f4d35e}.site-width{width:min(var(--content-width), calc(100% - 2 * var(--page-gutter)));margin-inline:auto}.hero{isolation:isolate;background:var(--night) url(/images/backgrounds/sky.jpg) center top / cover no-repeat;color:#fff;text-align:center;min-height:735px;margin-bottom:50px;position:relative;overflow:hidden}.hero__border{z-index:3;background:#000;height:5px;position:absolute;inset:0 0 auto}.hero__content{z-index:2;padding-top:38px;position:relative}.hero__logo{animation:rise-in 1s var(--ease-out) both;display:inline-block}.hero__logo img{width:min(100%,440px);margin-inline:auto}.hero__tagline{color:#fff;letter-spacing:-.035em;text-shadow:1px 1px 2px #00000059;max-width:820px;animation:rise-in 1.2s .1s var(--ease-out) both;margin:8px auto 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(25px,3.1vw,36px);font-weight:600;line-height:1.25}.section-nav{animation:reveal 1s .25s var(--ease-out) both;justify-content:center;gap:clamp(10px,4vw,56px);margin-top:60px;display:flex}.section-nav__item{width:250px;min-height:250px;transition:transform .22s var(--ease-out), filter .22s ease;background:url(/images/circle.png) 50%/contain no-repeat;border-radius:50%;flex-direction:column;align-items:center;display:flex}.section-nav__item:hover{filter:brightness(1.12);transform:translateY(-8px)}.section-nav__icon{place-items:end center;height:150px;padding-bottom:10px;display:grid}.section-nav__icon img{width:100px;height:100px}.section-nav__title{color:#fff;text-transform:uppercase;text-shadow:1px 1px 1px #00000059;font-size:20px;font-weight:700}.section-nav__description{color:#aaa;width:80%;margin-top:4px;font-size:14px}.hero__glow,.section__glow{z-index:0;pointer-events:none;background:url(/images/glow.png) top/contain no-repeat;width:min(935px,95vw);height:120px;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero__texture,.section__texture,.site-footer__texture{z-index:1;opacity:.34;pointer-events:none;background:url(/images/textures/minimal.png);position:absolute;inset:0}.zigzag{z-index:2;background:url(/images/zigzag.png) repeat-x;height:10px;margin-top:-60px;position:relative}.section{text-align:center;padding:80px 0;position:relative}.section__content,.approach__grid,.quote-band__content{z-index:2;position:relative}.section__title{letter-spacing:-.04em;margin:0 0 38px;font-size:clamp(34px,4vw,46px);line-height:1.15}.section__title--script{letter-spacing:-.035em;font-family:Brush Script MT,Segoe Script,cursive;font-size:clamp(42px,5vw,56px);font-weight:700}.services__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 30px;display:grid}.service-card{min-width:0}.service-card__icon{object-fit:contain;width:auto;height:64px;transition:transform .22s var(--ease-out), opacity .22s ease;margin:0 auto 16px}.service-card:hover .service-card__icon{opacity:.75;transform:translateY(-4px)}.service-card h3{margin:0 0 12px;font-size:20px;line-height:1.3}.service-card p,.approach__copy p,.about__copy p{color:var(--muted);text-align:justify;margin:0;font-size:16px;line-height:1.55}.approach{isolation:isolate;background:var(--blue);color:#fff;overflow:hidden}.approach__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(36px,6vw,76px);display:grid}.approach__image-wrap{align-self:end}.approach__image{width:100%;max-width:500px;margin-inline:auto}.approach__copy{padding-block:15px}.approach__copy .section__title{margin-bottom:24px}.approach__copy p{color:#fff;text-shadow:1px 1px 1px #00000038;margin-bottom:18px}.about__profile{text-align:left;grid-template-columns:220px minmax(0,1fr);align-items:start;gap:32px;max-width:970px;margin-inline:auto;display:grid}.about__portrait{background:#fff;border:1px solid #00000026;width:220px;padding:5px;box-shadow:0 2px 8px #0000001f}.social-links{align-items:center;gap:14px;margin-top:22px;display:flex}.social-links a{transition:opacity .18s ease, transform .18s var(--ease-out);display:inline-flex}.social-links a:hover{opacity:.65;transform:translateY(-2px)}.social-links img{object-fit:contain;width:24px;height:24px}.social-links--small img{width:16px;height:16px}.quote-band{isolation:isolate;background:var(--paper);text-align:center;padding:44px 0 48px;position:relative;overflow:hidden}.quote-band blockquote{color:#777;margin:0;padding:12px 0 18px;font-family:Georgia,Times New Roman,serif}.quote-band blockquote p{margin:0 0 6px;font-size:clamp(22px,3vw,30px);line-height:1.4}.quote-band cite{color:#83949c;font-size:17px;font-style:normal}.quote-band cite:before{content:"— "}.site-footer{isolation:isolate;background:var(--night) url(/images/backgrounds/sky.jpg) center / cover no-repeat;color:#fff;text-align:center;border-top:5px solid #000;min-height:300px;position:relative;overflow:hidden}.site-footer__content{z-index:2;padding-block:46px 30px;position:relative}.site-footer__logo{width:min(230px,70vw);margin:0 auto 16px}.site-footer__about,.site-footer__copyright{margin:0 0 12px;font-size:13px;line-height:1.5}.site-footer .social-links{justify-content:center;margin:18px 0}.site-footer__copyright{margin-top:20px}.site-footer__texture{z-index:1}.back-to-top{z-index:5;opacity:1;width:48px;height:48px;transition:background-color .18s ease, transform .18s var(--ease-out);background:#111111d1;border:1px solid #ffffff4d;border-radius:4px;place-items:center;display:grid;position:fixed;bottom:28px;right:28px}.back-to-top:hover{background:#111;transform:translateY(-3px)}.back-to-top img{object-fit:contain;width:24px;height:24px}@supports (animation-timeline:scroll()){.back-to-top{animation:linear both show-back-to-top;animation-timeline:scroll(root);animation-range:700px 780px}@keyframes show-back-to-top{0%{visibility:hidden;opacity:0}to{visibility:visible;opacity:1}}}@keyframes rise-in{0%{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:1024px){.hero{min-height:650px}.section-nav{gap:8px}.section-nav__item{background-size:225px 225px;width:225px;min-height:225px}.section-nav__icon{height:132px}.section-nav__icon img{width:88px;height:88px}.approach__grid{gap:34px}}@media (max-width:979px){.hero{min-height:475px}.section-nav{display:none}.services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){:root{--page-gutter:22px}.hero{background-size:auto 100%;min-height:470px;margin-bottom:42px}.hero__content{padding-top:46px}.hero__logo img{width:min(82vw,380px)}.hero__tagline{max-width:520px;margin-top:24px;font-size:clamp(23px,6vw,30px)}.zigzag{margin-top:-52px}.section{padding:62px 0}.section__title{margin-bottom:30px}.services__grid{grid-template-columns:1fr;gap:38px}.service-card{max-width:540px;margin-inline:auto}.service-card p,.approach__copy p,.about__copy p{text-align:left}.approach__grid{grid-template-columns:1fr;gap:30px}.approach__image-wrap{order:2}.approach__image{max-width:390px}.approach__copy{order:1;padding:0}.about__profile{text-align:center;grid-template-columns:1fr;justify-items:center;gap:22px}.about__portrait{width:min(220px,72vw)}.about__copy{max-width:560px}.about__copy p{text-align:left}.social-links--small{justify-content:center}.quote-band{padding:32px 0}.site-footer{min-height:280px}.site-footer__content{padding-top:38px}.back-to-top{width:44px;height:44px;bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
