:root{--home-ink:#1d1d1f;--home-ink-2:#424245;--home-muted:#6e6e73;--home-paper:#fff;--home-soft:#f5f5f7;--home-rule:#d2d2d7;--home-blue:#0071e3;--home-gold:#ffb429;--home-dark:#161719;--home-max:1120px}*{box-sizing:border-box}.home-refresh{margin:0;background:var(--home-paper);color:var(--home-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.6}.home-refresh a{color:inherit}.home-shell{width:min(var(--home-max),calc(100% - 48px));margin:0 auto}.home-skip{position:absolute;left:-9999px}.home-skip:focus{left:16px;top:16px;padding:10px 14px;background:#fff;color:var(--home-blue);z-index:10}.home-nav{height:56px;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(210,210,215,.7);position:sticky;top:0;z-index:5;backdrop-filter:blur(16px)}.home-nav__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.home-brand{display:inline-flex;align-items:baseline;gap:8px;text-decoration:none;font-weight:700;line-height:1}.home-brand span{font-size:24px;letter-spacing:0}.home-brand small{font-size:9px;color:var(--home-muted);letter-spacing:.8px}.home-nav nav{display:flex;gap:25px;margin-left:auto}.home-nav nav a,.home-lang{font-size:13px;text-decoration:none;color:var(--home-muted);min-height:44px;display:flex;align-items:center}.home-nav nav a:hover,.home-nav nav a[aria-current=page],.home-lang:hover{color:var(--home-ink)}.home-nav__actions{display:flex;align-items:center;gap:13px}.home-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 17px;border-radius:5px;text-decoration:none;font-weight:600;font-size:14px;transition:background-color .2s ease,transform .2s ease}.home-button:hover{transform:translateY(-1px)}.home-button--dark{background:var(--home-ink);color:#fff}.home-button--dark:hover{background:#000}.home-button--primary{background:var(--home-blue);color:#fff}.home-button--primary:hover{background:#0064c8}.home-hero{background:var(--home-soft);padding:86px 0 68px;overflow:hidden}.home-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(370px,.95fr);align-items:center;gap:66px}.home-kicker{margin:0 0 18px;color:var(--home-muted);font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.home-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--home-blue);margin:0 6px 1px 0}.home-hero h1{font-size:clamp(46px,6vw,76px);line-height:1.06;letter-spacing:0;font-weight:650;margin:0;max-width:680px}.home-hero h1 em{font-style:normal;color:var(--home-blue)}.home-hero__lede{color:var(--home-ink-2);max-width:575px;margin:28px 0 0;font-size:18px;line-height:1.75}.home-hero__actions{display:flex;align-items:center;gap:22px;margin-top:32px}.home-text-link,.home-card-link{color:var(--home-blue);font-weight:600;text-decoration:none}.home-text-link span,.home-card-link span{display:inline-block;transition:transform .2s ease}.home-text-link:hover span,.home-card-link:hover span{transform:translate(3px,-2px)}.home-hero__meta{display:flex;flex-wrap:wrap;gap:16px 23px;color:var(--home-muted);font-size:12px;margin-top:44px}.home-canvas-frame{height:390px;background:var(--home-dark);position:relative;overflow:hidden}.home-canvas-frame canvas{width:100%;height:100%;display:block}.home-canvas-label{position:absolute;color:#fff;font:600 10px/1.2 Consolas,monospace;letter-spacing:1px}.home-canvas-label--top{top:18px;left:20px}.home-canvas-label--bottom{right:20px;bottom:18px;color:#bfc2c8}.home-hero__peek{display:flex;align-items:center;gap:15px;border-left:2px solid var(--home-blue);padding:14px 0 14px 16px;margin-top:18px;font-size:12px}.home-hero__peek span{color:var(--home-muted)}.home-hero__peek strong{font-size:14px}.home-hero__peek a{color:var(--home-blue);margin-left:auto;text-decoration:none;font-weight:600}.home-section{padding:100px 0}.home-projects{background:#fff}.home-section__head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:42px}.home-section__head h2,.home-proof h2,.home-contact h2,.home-faq h2{font-size:clamp(34px,4vw,52px);line-height:1.12;letter-spacing:0;font-weight:650;margin:0}.home-section__head>p{max-width:390px;color:var(--home-muted);margin:0;font-size:15px}.home-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.home-project{border:1px solid var(--home-rule);background:#fff;min-width:0;transition:border-color .2s ease,transform .2s ease}.home-project:hover{border-color:#98989d;transform:translateY(-2px)}.home-project--feature{grid-row:span 2}.home-project__image{aspect-ratio:1.65/1;background:var(--home-soft);position:relative;overflow:hidden}.home-project--feature .home-project__image{aspect-ratio:1.5/1}.home-project__image img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}.home-project__index{position:absolute;top:16px;right:16px;width:32px;height:32px;display:grid;place-items:center;background:#fff;color:var(--home-ink);font:600 12px/1 Consolas,monospace}.home-project__body{padding:22px 23px 25px}.home-project__top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:20px}.home-tag{font-size:10px;color:var(--home-blue);font-weight:700;letter-spacing:.6px}.home-status{font-size:11px;color:var(--home-muted)}.home-project h3{font-size:26px;line-height:1.2;margin:16px 0 8px;font-weight:650}.home-project p{color:var(--home-muted);font-size:14px;line-height:1.65;margin:0 0 19px}.home-card-link{font-size:14px}.home-project--dark{background:var(--home-dark);border-color:var(--home-dark);color:#fff}.home-project--dark:hover{border-color:var(--home-dark)}.home-project--dark .home-project__body{min-height:220px;display:flex;flex-direction:column;align-items:flex-start}.home-project--dark .home-project__index{position:static;background:transparent;color:var(--home-gold);padding:0;width:auto;height:auto;margin-bottom:45px}.home-project--dark .home-tag{color:var(--home-gold)}.home-project--dark h3{font-size:28px;margin:14px 0 8px}.home-project--dark p{color:#bfc0c5}.home-project--dark .home-card-link{margin-top:auto;color:#fff}.home-entry{background:var(--home-soft)}.home-entry__grid{border-top:1px solid var(--home-ink);display:grid;grid-template-columns:repeat(3,1fr)}.home-entry__item{display:grid;grid-template-columns:34px 1fr 24px;gap:14px;padding:25px 18px 26px 0;border-bottom:1px solid var(--home-rule);text-decoration:none;transition:color .2s ease}.home-entry__item:not(:last-child){margin-right:24px}.home-entry__item:hover{color:var(--home-blue)}.home-entry__item>span{font:600 11px Consolas,monospace;color:var(--home-blue)}.home-entry__item h3{font-size:18px;margin:0 0 5px;font-weight:650}.home-entry__item p{color:var(--home-muted);font-size:13px;margin:0}.home-entry__item b{font-size:18px;font-weight:400}.home-proof{background:#fff}.home-proof__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.home-proof__lead{max-width:410px;color:var(--home-muted);font-size:17px;line-height:1.75;margin:25px 0 28px}.home-steps{list-style:none;padding:0;margin:0;border-top:1px solid var(--home-ink)}.home-steps li{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--home-rule)}.home-steps li>span{font:600 12px Consolas,monospace;color:var(--home-blue)}.home-steps h3{font-size:18px;margin:0 0 3px}.home-steps p{color:var(--home-muted);font-size:14px;margin:0}.home-contact{background:var(--home-dark);color:#fff}.home-contact__inner{display:grid;grid-template-columns:1fr 1fr;gap:90px}.home-contact .home-kicker{color:var(--home-gold)}.home-contact h2{font-size:clamp(36px,4.5vw,58px)}.home-contact p{color:#bfc0c5;max-width:440px;margin:20px 0 0}.home-contact__links{border-top:1px solid #57585d}.home-contact__links a{display:flex;justify-content:space-between;gap:15px;padding:18px 0;border-bottom:1px solid #57585d;text-decoration:none;font-size:16px}.home-contact__links a:hover{color:var(--home-gold)}.home-contact__links span{font-size:12px;color:#9b9ca1}.home-faq{background:var(--home-soft)}.home-faq__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.home-faq details{border-top:1px solid var(--home-rule);padding:20px 0}.home-faq details:last-child{border-bottom:1px solid var(--home-rule)}.home-faq summary{cursor:pointer;font-weight:600;list-style:none;padding-right:20px;position:relative}.home-faq summary::-webkit-details-marker{display:none}.home-faq summary:after{content:'+';position:absolute;right:0;color:var(--home-blue);font-size:21px;font-weight:400;top:-4px}.home-faq details[open] summary:after{content:'−'}.home-faq details p{color:var(--home-muted);font-size:14px;max-width:560px;margin:13px 0 0}.home-footer{background:#fff;padding:65px 0 25px;border-top:1px solid var(--home-rule)}.home-footer__top{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:35px}.home-footer p{color:var(--home-muted);font-size:13px;margin:22px 0 0}.home-footer h3{font-size:13px;margin:0 0 15px}.home-footer__top>div:not(:first-child){display:flex;flex-direction:column;gap:8px}.home-footer__top a:not(.home-brand){font-size:13px;color:var(--home-muted);text-decoration:none}.home-footer__top a:not(.home-brand):hover,.home-footer__bottom a:hover{color:var(--home-blue)}.home-footer__bottom{display:flex;justify-content:space-between;border-top:1px solid var(--home-rule);margin-top:50px;padding-top:18px;color:var(--home-muted);font-size:11px}.home-footer__bottom a{text-decoration:none}.home-refresh :focus-visible{outline:3px solid var(--home-blue);outline-offset:3px}@media(max-width:900px){.home-nav nav{gap:15px}.home-hero__grid{grid-template-columns:1fr;gap:42px}.home-hero__visual{max-width:650px}.home-section__head,.home-proof__grid,.home-contact__inner,.home-faq__grid{grid-template-columns:1fr;gap:28px}.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-project--feature{grid-row:auto;grid-column:span 2}.home-project--feature .home-project__image{aspect-ratio:1.7/1}.home-entry__grid{grid-template-columns:1fr}.home-entry__item:not(:last-child){margin-right:0}.home-footer__top{grid-template-columns:1.5fr repeat(3,1fr)}}@media(max-width:620px){.home-shell{width:min(100% - 32px,var(--home-max))}.home-nav{height:54px}.home-nav nav{display:none}.home-brand small{display:none}.home-nav__actions{margin-left:auto}.home-lang{font-size:12px}.home-button--dark{padding:0 13px;font-size:12px}.home-hero{padding:58px 0 45px}.home-hero h1{font-size:47px}.home-hero__lede{font-size:16px;margin-top:22px}.home-hero__actions{align-items:flex-start;flex-direction:column;gap:18px}.home-hero__meta{gap:8px 15px;margin-top:32px}.home-canvas-frame{height:285px}.home-section{padding:70px 0}.home-section__head h2,.home-proof h2,.home-contact h2,.home-faq h2{font-size:36px}.home-project-grid{grid-template-columns:1fr;gap:12px}.home-project--feature{grid-column:auto}.home-project--feature .home-project__image{aspect-ratio:1.5/1}.home-project__image{aspect-ratio:1.5/1}.home-project--dark .home-project__body{min-height:190px}.home-entry__item{padding-right:0;grid-template-columns:28px 1fr 20px}.home-proof__grid,.home-contact__inner,.home-faq__grid{gap:42px}.home-contact__links a{font-size:14px}.home-footer__top{grid-template-columns:1fr 1fr;gap:30px}.home-footer__top>div:first-child{grid-column:span 2}.home-footer__bottom{gap:12px;align-items:flex-start;flex-direction:column;margin-top:38px}}
/* Project index refinement: a 3 x 3 shelf with one dominant project and explicit future slots. */
.home-project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-project--feature{grid-column:span 2;grid-row:span 2}.home-project--feature .home-project__image{aspect-ratio:1.62/1}.home-project__image img{transition:transform .35s ease}.home-project:hover .home-project__image img{transform:scale(1.025)}.home-project--compact .home-project__body{padding:18px 19px 21px}.home-project--compact .home-project__image{aspect-ratio:1.55/1}.home-project--compact h3{font-size:20px;margin:12px 0 6px}.home-project--compact p{font-size:13px;margin-bottom:15px}.home-project--outline{background:var(--home-soft)}.home-project--outline .home-project__body{min-height:220px;display:flex;flex-direction:column;align-items:flex-start}.home-project--outline .home-project__index{position:static;background:transparent;color:var(--home-blue);padding:0;width:auto;height:auto;margin-bottom:45px}.home-project--outline .home-card-link{margin-top:auto}
@media(max-width:900px){.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-project--feature{grid-row:auto;grid-column:span 2}}
@media(max-width:620px){.home-project-grid{grid-template-columns:1fr}.home-project--feature{grid-column:auto}.home-project--outline .home-project__body{min-height:190px}}
@media(prefers-reduced-motion:reduce){.home-button,.home-project,.home-text-link span,.home-card-link span,.home-project__image img{transition:none}}
.home-hero__benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--home-rule);border-bottom:1px solid var(--home-rule)}.home-hero__benefit{min-width:0;padding:15px 18px 16px 0}.home-hero__benefit:not(:last-child){border-right:1px solid var(--home-rule);margin-right:18px}.home-hero__benefit b{display:block;color:var(--home-blue);font-size:13px;font-weight:650;line-height:1.35}.home-hero__benefit span{display:block;margin-top:5px;color:var(--home-muted);font-size:12px;line-height:1.55}.home-hero__benefits+.home-hero__actions{margin-top:26px}@media(max-width:620px){.home-hero__benefits{grid-template-columns:1fr;margin-top:25px}.home-hero__benefit{padding:13px 0}.home-hero__benefit:not(:last-child){margin-right:0;border-right:0;border-bottom:1px solid var(--home-rule)}.home-hero__benefit span{font-size:13px}}
.home-project--live{position:relative;border-color:#9fc5ee}.home-project--live:before{content:"";position:absolute;z-index:3;right:18px;bottom:18px;width:7px;height:7px;border-radius:50%;background:var(--home-blue);box-shadow:0 0 0 4px var(--home-paper);animation:home-pulse 1.8s ease-in-out infinite;pointer-events:none}.home-project--live:hover{border-color:var(--home-blue)}.home-project--live .home-project__image:after{content:"LIVE / ONLINE";position:absolute;right:14px;bottom:14px;padding:5px 7px;background:var(--home-paper);color:var(--home-blue);font:600 9px/1 Consolas,monospace;letter-spacing:.4px;border:1px solid var(--home-rule);opacity:.92}.home-project--live:hover .home-project__image:after{border-color:var(--home-blue)}@media(prefers-reduced-motion:reduce){.home-project--live:before{animation:none}}
.home-projects .home-section__head h2{font-size:clamp(36px,4vw,48px)}.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-project--feature{grid-column:auto;grid-row:auto}.home-project--feature .home-project__image{aspect-ratio:1.65/1}.home-project__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;list-style:none;margin:20px 0;padding:14px 0;border-top:1px solid var(--home-rule);border-bottom:1px solid var(--home-rule)}.home-project__metrics li{min-width:0}.home-project__metrics b{display:block;color:var(--home-blue);font-size:14px;line-height:1.2;font-weight:650}.home-project__metrics span{display:block;margin-top:4px;color:var(--home-muted);font-size:11px;line-height:1.35}.home-project--live .home-project__body{position:relative}.home-project--live .home-card-link{display:inline-flex;min-height:36px;align-items:center;padding:0 12px;border:1px solid var(--home-blue);background:var(--home-blue);color:#fff;transition:background-color .2s ease,transform .2s ease}.home-project--live .home-card-link:hover{background:#0064c8;transform:translateY(-1px)}@media(max-width:620px){.home-projects .home-section__head h2{font-size:34px}.home-project__metrics{margin:17px 0;padding:12px 0}.home-project__metrics b{font-size:13px}.home-project__metrics span{font-size:10px}}
.home-project__image--link{display:block;color:inherit;text-decoration:none;cursor:pointer}.home-project--live .home-project__image--link:focus-visible{outline:3px solid var(--home-blue);outline-offset:-4px}.home-project__visual-cta{position:absolute;left:18px;right:18px;bottom:18px;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--home-blue);color:#fff;font-size:13px;font-weight:650;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.home-project__visual-cta b{font-size:18px;font-weight:400}.home-project--live:hover .home-project__visual-cta,.home-project--live:focus-within .home-project__visual-cta{opacity:1;transform:none}.home-project--live:hover .project-art{transform:scale(1.015)}.home-project--live .project-art{transition:transform .35s ease}@media(max-width:620px){.home-project__visual-cta{left:12px;right:12px;bottom:12px;padding:10px 12px;font-size:12px}}@media(prefers-reduced-motion:reduce){.home-project__visual-cta,.home-project--live .project-art{transition:none}}
.home-project--live .home-project__image--link:before{content:"MOVE IN TO EXPLORE";position:absolute;left:18px;bottom:18px;z-index:3;color:var(--home-ink);font:600 9px/1 Consolas,monospace;letter-spacing:.7px;opacity:.66;transition:opacity .2s ease}.home-project--live .home-project__image--link:hover:before,.home-project--live .home-project__image--link:focus:before{opacity:0}.home-project--live .home-project__image--link:hover .home-project__index,.home-project--live .home-project__image--link:focus .home-project__index{color:var(--home-blue);border-color:var(--home-blue)}@media(max-width:620px){.home-project--live .home-project__image--link:before{left:12px;bottom:12px;font-size:8px}}
.project-art{display:block;width:100%;height:100%;background:var(--home-soft)}.home-project--dark .home-project__image{background:var(--home-dark)}.home-project--dark .home-project__body{background:var(--home-dark)}.home-project--outline .home-project__image{background:#e8e9ed}.home-project--outline .home-project__body{background:var(--home-soft)}
.home-hero{background:#eef6ff}.home-canvas-frame{background:#eaf4ff;border:1px solid #c9def5}.home-canvas-label{color:var(--home-ink)}.home-canvas-label--bottom{color:var(--home-muted)}.home-project--dark{background:#eaf4ff;border-color:#c9def5;color:var(--home-ink)}.home-project--dark:hover{border-color:#9fc5ee}.home-project--dark .home-image,.home-project--dark .home-project__image,.home-project--dark .home-project__body{background:#eaf4ff}.home-project--dark .home-project__index{color:var(--home-blue)}.home-project--dark .home-tag{color:var(--home-blue)}.home-project--dark p{color:var(--home-muted)}.home-project--dark .home-card-link{color:var(--home-blue)}.home-contact{background:#eef6ff;color:var(--home-ink);border-top:1px solid #c9def5;border-bottom:1px solid #c9def5}.home-contact .home-kicker{color:var(--home-blue)}.home-contact p{color:var(--home-muted)}.home-contact__links{border-top-color:#b9d3ee}.home-contact__links a{border-bottom-color:#b9d3ee}.home-contact__links span{color:var(--home-muted)}
/* Product shelf density: projects are compared like a catalogue, not read as posters. */
.home-projects{padding:76px 0}.home-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-project--feature{grid-column:auto;grid-row:auto}.home-project__image,.home-project--feature .home-project__image,.home-project--compact .home-project__image{aspect-ratio:1.9/1}.home-project__index{top:12px;right:12px;width:28px;height:28px;font-size:10px}.home-project__body,.home-project--compact .home-project__body{padding:16px 17px 18px}.home-project h3{font-size:21px;line-height:1.25;margin:10px 0 6px}.home-project p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:13px;line-height:1.55;margin:0 0 12px}.home-project__metrics{gap:6px;margin:13px 0;padding:10px 0}.home-project__metrics b{font-size:13px}.home-project__metrics span{font-size:10px}.home-project--live .home-card-link{min-height:32px;padding:0 10px;font-size:13px}.home-project--outline .home-project__body,.home-project--dark .home-project__body{min-height:156px}.home-project--dark .home-project__index,.home-project--outline .home-project__index{margin-bottom:24px}.home-project--dark h3{font-size:22px}.home-project--live:before{right:12px;bottom:12px}.home-project--live .home-project__image:after{right:10px;bottom:10px}.home-project__visual-cta{left:12px;right:12px;bottom:12px;padding:10px 12px}
@media(max-width:900px){.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-project__image,.home-project--feature .home-project__image,.home-project--compact .home-project__image{aspect-ratio:1.75/1}}
@media(max-width:620px){.home-projects{padding:62px 0}.home-project-grid{grid-template-columns:1fr}.home-project__image,.home-project--feature .home-project__image,.home-project--compact .home-project__image{aspect-ratio:1.65/1}.home-project__body,.home-project--compact .home-project__body{padding:17px}.home-project p{-webkit-line-clamp:3}.home-project--outline .home-project__body,.home-project--dark .home-project__body{min-height:0}}
.home-refresh{--home-dark:#eaf4ff}.home-button--dark{background:var(--home-blue);color:#fff}.home-button--dark:hover{background:#0064c8}.home-refresh.motion-ready .home-section{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.home-refresh.motion-ready .home-section.is-visible{opacity:1;transform:none}.home-refresh.motion-ready .home-hero__copy{animation:home-hero-in .65s ease both}.home-refresh.motion-ready .home-hero__visual{animation:home-hero-in .75s .08s ease both}.home-canvas-frame{isolation:isolate}.home-canvas-frame:after{content:"";position:absolute;left:12px;right:12px;top:14px;height:1px;background:var(--home-blue);opacity:.28;transform:translateY(-6px);animation:home-scan 3.8s ease-in-out infinite;pointer-events:none}.home-canvas-frame canvas{position:relative;z-index:0;transform:translate3d(var(--hero-x,0),var(--hero-y,0),0) scale(1.015);transition:transform .45s cubic-bezier(.2,.7,.2,1)}.home-project{perspective:900px;transform-style:preserve-3d}.home-project.is-pointer{z-index:2;transition:transform .12s ease-out,border-color .2s ease}.home-project.is-pointer:after{content:"";position:absolute;left:var(--focus-x,50%);top:var(--focus-y,50%);width:34px;height:34px;border-left:1px solid var(--home-blue);border-top:1px solid var(--home-blue);opacity:.6;transform:translate(-1px,-1px);pointer-events:none}.home-live-dot{animation:home-pulse 2.4s ease-in-out infinite}.home-hero__peek strong:after{content:"";display:inline-block;width:5px;height:5px;background:var(--home-blue);margin:0 0 2px 8px;border-radius:50%;animation:home-pulse 1.8s ease-in-out infinite}@keyframes home-hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes home-scan{0%,100%{transform:translateY(-6px);opacity:.1}50%{transform:translateY(368px);opacity:.45}}@keyframes home-pulse{0%,100%{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@media(max-width:620px){.home-canvas-frame:after{animation-duration:4.8s}.home-refresh.motion-ready .home-section{transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){.home-refresh.motion-ready .home-section,.home-refresh.motion-ready .home-hero__copy,.home-refresh.motion-ready .home-hero__visual{opacity:1;transform:none;animation:none;transition:none}.home-canvas-frame:after,.home-live-dot,.home-hero__peek strong:after{animation:none}.home-canvas-frame canvas{transform:none;transition:none}.home-project.is-pointer{transform:none!important;transition:none}}
/* Theme bridge: homepage visuals inherit the same semantic palette as every public page. */
.home-refresh{--home-ink:var(--ink);--home-ink-2:var(--ink-2);--home-muted:var(--ink-3);--home-paper:var(--cream);--home-soft:var(--paper);--home-rule:var(--rule);--home-blue:var(--coral);--home-gold:var(--gold);--home-dark:var(--paper-2)}
.home-refresh .home-button--dark,.home-refresh .home-button--primary{background:var(--coral);color:var(--cream)}
.home-refresh .home-button--dark:hover,.home-refresh .home-button--primary:hover{background:var(--coral-2);color:var(--cream)}
.home-refresh .home-hero,.home-refresh .home-contact{background:var(--paper);color:var(--ink);border-color:var(--rule)}
.home-refresh .home-canvas-frame,.home-refresh .home-project--dark,.home-refresh .home-project--dark .home-project__image,.home-refresh .home-project--dark .home-project__body{background:var(--paper-2);border-color:var(--rule);color:var(--ink)}
.home-refresh .home-project--outline .home-project__image,.home-refresh .home-project--outline .home-project__body{background:var(--paper);border-color:var(--rule)}
.home-refresh .home-project--live{border-color:var(--rule)}
.home-refresh .home-project--live:hover{border-color:var(--coral)}
.home-refresh .home-project--live .home-card-link{background:var(--coral);border-color:var(--coral);color:#fff}
.home-refresh .home-project--live .home-card-link:hover{background:var(--coral-2);color:var(--cream)}
.home-refresh .home-contact p,.home-refresh .home-contact__links span{color:var(--ink-3)}
.home-refresh .home-contact__links,.home-refresh .home-contact__links a{border-color:var(--rule)}
.home-refresh .home-project__visual-cta{left:auto;right:12px;bottom:12px;max-width:calc(100% - 24px);min-height:36px;padding:8px 10px;background:var(--cream);border:1px solid var(--rule);color:var(--coral);box-shadow:none}
.home-refresh .home-project__visual-cta b{color:currentColor}
.home-refresh .home-project--live:hover .home-project__visual-cta,.home-refresh .home-project--live:focus-within .home-project__visual-cta{border-color:var(--coral)}
.home-refresh .home-project--live .home-project__image--link:before{content:none}
.home-refresh .home-hero{padding-top:48px}
.home-refresh .home-hero__campaign{grid-column:1/-1;max-width:960px;padding:0 0 8px;border-bottom:1px solid var(--rule)}
.home-refresh .home-hero__campaign .home-kicker{margin:0 0 12px}
.home-refresh .home-hero__campaign h1{max-width:18ch;margin:0;color:var(--ink);font-size:clamp(42px,5vw,68px);font-weight:600;line-height:1.08}
.home-refresh .home-hero__campaign h1 em,.home-refresh .home-hero__copy h2 em{color:var(--coral);font-style:normal}
.home-refresh .home-hero__copy h2{max-width:12ch;margin:0;color:var(--ink);font-size:clamp(34px,3.5vw,52px);font-weight:600;line-height:1.1}
.home-refresh .home-hero__copy .home-hero__lede{margin-top:20px}
@media(max-width:620px){.home-refresh .home-hero{padding-top:40px}.home-refresh .home-hero__campaign{padding-bottom:20px}.home-refresh .home-hero__campaign h1{font-size:44px}.home-refresh .home-hero__copy h2{font-size:34px}}

/* Contrast contract: filled actions use white text; text-only links use the darker link token. */
.home-refresh .home-button--dark,
.home-refresh .home-button--primary,
.home-refresh .home-project--live .home-card-link {
  background: var(--coral);
  border-color: var(--coral);
  color: #fff;
}
.home-refresh .home-button--dark:hover,
.home-refresh .home-button--primary:hover,
.home-refresh .home-project--live .home-card-link:hover {
  background: var(--coral-2);
  border-color: var(--coral-2);
  color: #fff;
}
.home-refresh .home-text-link,
.home-refresh .home-project--dark .home-card-link,
.home-refresh .home-hero__peek a,
.home-refresh .home-entry__item,
.home-refresh .home-contact__links a {
  color: var(--link);
}
