.ip-main{background:var(--hm-bg-1);color:var(--hm-fg)}.inner-shell .site-header{background:color-mix(in srgb, var(--hm-bg-1) 86%, transparent);transition:background-color .35s,border-color .35s,box-shadow .35s}.inner-shell:not([data-scrolled]) .site-header{border-bottom-color:#0000}.inner-shell .header-inner{transition:height .35s var(--ease)}.inner-shell[data-scrolled] .header-inner{height:72px}.inner-shell[data-scrolled] .site-header{border-bottom-color:var(--hm-border);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2)}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-old(.page-exit){animation:.22s ease-in both page-out}::view-transition-new(.page-enter){animation:.44s cubic-bezier(.22,.8,.24,1) .12s both page-in}@keyframes page-out{to{opacity:0;translate:0 -10px}}@keyframes page-in{0%{opacity:0;translate:0 15px}}.page-line{z-index:70;transform-origin:0;pointer-events:none;background:linear-gradient(90deg,#0000,#ff7a45 30%,#5b7cf0 70%,#0000);height:2px;animation:.75s cubic-bezier(.22,.8,.24,1) both page-line;position:fixed;top:0;left:0;right:0}@keyframes page-line{0%{opacity:1;scale:0 1}70%{opacity:1;scale:1}to{opacity:0;scale:1}}.hm-armed [data-hm=scale]{transition:var(--hm-reveal), scale .9s var(--ease) var(--hm-delay,0s);translate:0;scale:.96}.hm-armed [data-hm=scale].is-in{scale:1}.hm-armed [data-hm=line]{opacity:1;filter:none;transform-origin:0;transition:scale 1.1s var(--ease) var(--hm-delay,0s);translate:0;scale:0 1}.hm-armed [data-hm=line].is-in{scale:1}.ip-hero{border-bottom:1px solid var(--hm-border);background:radial-gradient(ellipse 55% 70% at 88% 25%, var(--tone-glow), transparent 70%), var(--hm-bg-1);padding-block:clamp(64px,9vw,124px) clamp(56px,7vw,96px);position:relative;overflow:hidden}.ip-hero-num{letter-spacing:-.06em;color:#0000;-webkit-text-stroke:1px var(--hm-border);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(160px,24vw,400px);font-weight:700;line-height:1;position:absolute;bottom:-5vw;right:-1vw}.ip-hero-orbit{fill:none;width:100%;height:100%;stroke:var(--hm-border);stroke-dasharray:2 9;pointer-events:none;position:absolute;inset:0}.ip-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,80px);display:grid;position:relative}.ip-hero-grid.is-solo{grid-template-columns:minmax(0,900px)}.ip-title{letter-spacing:-.05em;color:var(--hm-fg);margin-top:20px;font-size:clamp(40px,5.8vw,80px);font-weight:600;line-height:1.02}.ip-hero-grid:not(.is-solo) .ip-title{font-size:clamp(38px,4.4vw,64px)}.ip-lead{max-width:560px;color:var(--hm-body);margin-top:26px;font-size:clamp(16px,1.25vw,18px);line-height:1.65}.ip-lead p+p{margin-top:14px}.ip-hero-extra{margin-top:32px}.ip-hero-extra>*+*{margin-top:28px}.ip-hero-visual{position:relative}.ip-load{animation:ip-load .8s var(--ease) calc(var(--i,0) * 90ms + 60ms) both}.ip-load-scale{animation-name:ip-load-scale}@keyframes ip-load{0%{opacity:0;filter:blur(4px);translate:0 22px}}@keyframes ip-load-scale{0%{opacity:0;scale:.96}}.ip-section{padding-block:clamp(72px,9vw,128px);position:relative}.ip-section+.ip-section{border-top:1px solid var(--hm-border)}.ip-section.is-tint{background:var(--hm-bg-2)}.ip-section-title{font-size:clamp(32px,3.8vw,52px)}.ip-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.ip-card{border:1px solid var(--hm-border);background:var(--hm-card);box-shadow:var(--hm-shadow);border-radius:22px}.ip-chips{flex-wrap:wrap;gap:6px;display:flex}.ip-chips li,.ip-chip{border:1px solid var(--hm-border);background:var(--hm-card-2);color:var(--hm-body);border-radius:999px;padding:5px 11px;font-size:12px}.ip-stats{border:1px solid var(--hm-border);background:var(--hm-border);border-radius:20px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;display:grid;overflow:hidden}.ip-stats>div{background:var(--hm-card);padding:22px 22px 20px}.ip-stats dd{letter-spacing:-.04em;color:var(--hm-fg);font-size:clamp(28px,3vw,40px);font-weight:650;line-height:1}.ip-stats dt{color:var(--hm-faint);margin-top:10px;font-size:12px}.ip-back{color:var(--hm-faint);transition:color .25s ease, translate .3s var(--ease);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.ip-back:hover{color:var(--hm-fg);translate:-3px}@media (max-width:899px){.ip-hero-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ip-load,.page-line{animation:none}::view-transition-old(.page-exit){animation:none}::view-transition-new(.page-enter){animation:none}}.ab-portrait{border:1px solid var(--hm-border);background:var(--hm-card);max-width:440px;box-shadow:var(--hm-shadow-hover);border-radius:28px;margin-left:auto;padding:12px;position:relative}.ab-portrait-img{aspect-ratio:4/4.4;background:var(--tone-wash);border-radius:20px;position:relative;overflow:hidden}.ab-portrait-img img{object-fit:cover;object-position:50% 20%;transform:translate(calc(var(--px,0) * -4px), calc(var(--py,0) * -4px)) scale(1.03);transition:transform .6s var(--ease)}.ab-portrait figcaption{align-items:center;gap:12px;padding:18px 8px 4px;display:flex}.ab-portrait figcaption div{gap:2px;display:grid}.ab-portrait strong{color:var(--hm-fg);font-size:16px}.ab-portrait figcaption span:not(.ab-status){color:var(--hm-body);font-size:13px}.ab-status{background:#22c55e;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #22c55e26}.inner-shell .ab-socials{gap:8px;padding:12px 8px 6px}.inner-shell :is(.ab-socials,.ct-socials) a{border-radius:11px;width:36px;height:36px}.ab-stats{grid-template-columns:repeat(4,minmax(0,1fr));max-width:560px}.ab-stats>div{padding:16px}.ab-stats dd{font-size:clamp(24px,2.4vw,32px)}.ab-approach{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.ab-approach-card{transition:var(--hm-reveal), border-color .35s ease, translate .4s var(--ease);padding:28px}.ab-approach-card[data-focus]{border-color:var(--hm-border-strong)}.ab-num{letter-spacing:.1em;color:var(--hm-accent-ink,var(--hm-accent));font-size:12px;font-weight:600}.ab-approach-card h3,.ab-step h3,.ab-tool-group h3{letter-spacing:-.02em;color:var(--hm-fg);margin-top:14px;font-size:22px;font-weight:600}.ab-approach-card p,.ab-step p{color:var(--hm-body);margin-top:10px;font-size:15px;line-height:1.6}.ab-journey{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.ab-journey-aside{position:sticky;top:110px}.ab-journey-aside .hm-head{margin-bottom:20px}.ab-journey-aside .hm-intro{margin-bottom:18px}.ab-timeline-wrap{padding-left:36px;position:relative}.ab-timeline-rail{background:var(--hm-border);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:7px}.ab-timeline-rail span{border-radius:inherit;background:linear-gradient(var(--hm-accent), #5b7cf0);transform-origin:top;scale:1 var(--fill,0);position:absolute;inset:0}.ab-timeline{gap:18px;display:grid}.ab-milestone{outline-offset:4px;transition:var(--hm-reveal), background-color .4s ease, border-color .4s ease;border:1px solid #0000;border-radius:20px;padding:22px 24px;position:relative}.ab-dot{border:2px solid var(--hm-border-strong);background:var(--hm-bg-2);border-radius:50%;width:16px;height:16px;transition:border-color .35s,background-color .35s,box-shadow .35s;position:absolute;top:30px;left:-36px}.ab-year{letter-spacing:-.02em;color:var(--hm-faint);transition:font-size .4s var(--ease), color .35s ease;font-size:15px;font-weight:650;display:block}.ab-milestone h3{letter-spacing:-.02em;color:var(--hm-fg);margin-top:6px;font-size:20px;font-weight:600}.ab-company{color:var(--hm-body);margin-top:4px;font-size:14px}.ab-summary{color:var(--hm-faint);margin-top:10px;font-size:14px;line-height:1.55}.ab-milestone .ab-tech{opacity:0;max-height:0;transition:max-height .45s var(--ease), opacity .3s ease, margin-top .4s var(--ease);display:flex;overflow:hidden}.ab-milestone:is([data-focus],:hover,:focus-visible){border-color:var(--hm-border);background:var(--hm-card)}.ab-milestone:is([data-focus],:hover,:focus-visible) .ab-dot{border-color:var(--hm-accent);background:var(--hm-accent);box-shadow:0 0 0 5px color-mix(in srgb, var(--hm-accent) 20%, transparent)}.ab-milestone:is([data-focus],:hover,:focus-visible) .ab-year{color:var(--hm-accent-ink,var(--hm-accent));font-size:22px}.ab-milestone:is([data-focus],:hover,:focus-visible) .ab-summary{color:var(--hm-body)}.ab-milestone:is(:hover,:focus-visible) .ab-tech{opacity:1;max-height:120px;margin-top:14px}.ab-process{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;display:grid;position:relative}.ab-process-line{background:linear-gradient(90deg, var(--hm-accent), var(--hm-border-strong));height:1px;position:absolute;top:21px;left:22px;right:12%}.ab-step{position:relative}.ab-step-num{border:1px solid var(--hm-border-strong);background:var(--hm-bg-1);width:44px;height:44px;color:var(--hm-fg);border-radius:50%;place-items:center;font-size:13px;font-weight:650;display:grid}.ab-principles{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}@media (max-width:1099px){.ab-principles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.ab-principles{grid-template-columns:1fr}}.ab-principle{cursor:default;outline-offset:4px;min-height:200px;transition:var(--hm-reveal), transform .4s var(--ease), border-color .35s ease, box-shadow .4s ease;padding:26px 24px;position:relative;overflow:hidden}.ab-principle:before{content:"";background:var(--tone);transform-origin:0;width:100%;height:3px;transition:scale .45s var(--ease);position:absolute;top:0;left:0;scale:0 1}.ab-statement{letter-spacing:-.02em;transition:translate .4s var(--ease);gap:4px;font-size:clamp(18px,1.5vw,21px);line-height:1.15;display:grid}.ab-statement strong{color:var(--hm-fg);font-weight:650}.ab-statement span{color:var(--hm-faint)}.ab-gt{font-size:16px;color:var(--tone-ink,var(--tone))!important}.ab-why{color:var(--hm-body);opacity:0;transition:opacity .35s ease, translate .4s var(--ease);margin-top:16px;font-size:14px;line-height:1.55;translate:0 8px}.ab-principle:is(:hover,:focus-visible){border-color:color-mix(in srgb, var(--tone) 40%, var(--hm-border));box-shadow:var(--hm-shadow-hover);transform:translateY(-4px)}.ab-principle:is(:hover,:focus-visible):before{scale:1}.ab-principle:is(:hover,:focus-visible) .ab-statement{translate:0 -4px}.ab-principle:is(:hover,:focus-visible) .ab-why{opacity:1;translate:0}@media (hover:none){.ab-why{opacity:1;translate:0}.ab-milestone .ab-tech{opacity:1;max-height:120px;margin-top:14px}}.ab-tools{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.ab-tool-group{padding:24px}.ab-tool-group h3{margin:0 0 16px;font-size:18px}@media (max-width:899px){.ab-portrait{margin-inline:auto}.ab-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-approach,.ab-journey{grid-template-columns:1fr}.ab-journey-aside{position:static}.ab-process{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-process-line{display:none}}@media (max-width:560px){.ab-process{grid-template-columns:1fr}}.sv-hero-card{max-width:480px;margin-left:auto;padding:14px}.sv-hero-art{aspect-ratio:16/11;background:var(--tone-wash);border-radius:16px;place-items:center;display:grid}.sv-hero-art .sv .sv-flow{animation-play-state:running}.sv-hero-flow{color:var(--hm-body);flex-wrap:wrap;justify-content:center;gap:6px 0;padding:16px 6px 4px;font-size:13px;font-weight:500;display:flex}.sv-hero-flow li+li:before{content:"→";color:var(--hm-faint);margin-inline:10px}.sx{grid-template-columns:minmax(220px,300px) 40px minmax(0,1fr);align-items:start;display:grid;position:relative}.sx-nav{grid-column:1;gap:14px;display:flex;position:sticky;top:100px}.sx-rail{background:var(--hm-border);border-radius:2px;flex-shrink:0;width:2px;position:relative}.sx-indicator{width:2px;height:calc(100% / var(--sx-count));background:var(--tone);translate:0 calc(var(--sx-index) * 100%);transition:translate .45s var(--ease), background-color .35s ease;border-radius:2px;position:absolute;top:0;left:0}.sx-nav ol{flex:1;display:grid}.sx-tab{text-align:left;width:100%;min-height:52px;color:var(--hm-body);transition:background-color .3s ease, border-color .3s ease, color .3s ease, translate .3s var(--ease);border:1px solid #0000;border-radius:14px;align-items:center;gap:12px;padding:10px 14px;font-size:15px;display:flex}.sx-num{letter-spacing:.08em;color:var(--hm-faint);font-size:11px;font-weight:600}.sx-label{flex:1}.sx-arrow{opacity:0;color:var(--tone-ink,var(--tone));transition:opacity .3s ease, translate .35s var(--ease);translate:-6px}.sx-tab:hover{color:var(--hm-fg);translate:3px}.sx-tab[aria-selected=true]{border-color:color-mix(in srgb, var(--tone) 35%, var(--hm-border));background:var(--tone-wash);color:var(--hm-fg);font-weight:600}.sx-tab[aria-selected=true] .sx-num{color:var(--tone-ink,var(--tone))}.sx-tab:is([aria-selected=true],:hover) .sx-arrow{opacity:1;translate:0}.sx-connector{top:calc(26px + var(--sx-index) * 52px);background:linear-gradient(90deg, var(--tone), color-mix(in srgb, var(--tone) 30%, transparent));transform-origin:0;width:40px;height:1px;animation:sx-connect .5s var(--ease) .15s both;position:absolute;left:100%}@keyframes sx-connect{0%{scale:0 1}}.sx-panel{border:1px solid color-mix(in srgb, var(--tone) 22%, var(--hm-border));background:var(--hm-card);box-shadow:var(--hm-shadow);border-radius:26px;grid-column:3;padding:clamp(24px,3vw,40px);transition:border-color .4s}.sx-panel-inner{animation:hm-panel-in .4s var(--ease) both}.sx-panel[data-leaving] .sx-panel-inner{opacity:0;transition:opacity .17s,translate .17s;translate:-12px}.sx-panel-head{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:24px;display:grid}.sx-panel .hm-label span{color:var(--tone-ink,var(--tone))}.sx-panel h3{letter-spacing:-.035em;color:var(--hm-fg);margin-top:14px;font-size:clamp(26px,2.6vw,36px);font-weight:600;line-height:1.1}.sx-desc{color:var(--hm-body);margin-top:14px;font-size:16px;line-height:1.65}.sx-visual{aspect-ratio:16/11;background:var(--tone-wash);border-radius:18px;place-items:center;display:grid}.sx-visual .sv-flow{animation-play-state:running}.sx-columns{border-top:1px solid var(--hm-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px;padding-top:26px;display:grid}.sx-list{gap:10px;margin-top:14px;display:grid}.sx-list li{color:var(--hm-body);padding-left:22px;font-size:15px;line-height:1.5;position:relative}.sx-list li:before{content:"";background:var(--hm-faint);width:8px;height:1px;position:absolute;top:9px;left:2px}.sx-list-check li{color:var(--hm-fg)}.sx-list-check li:before{border-bottom:2px solid var(--tone);border-left:2px solid var(--tone);background:0 0;width:10px;height:6px;top:5px;rotate:-45deg}.sx-meta{border-top:1px solid var(--hm-border);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-top:28px;padding-top:24px;display:grid}.sx-meta .ip-chips,.sx-links{margin-top:12px}.sx-links{gap:4px;display:grid}.sx-links a{color:var(--hm-fg);transition:translate .3s var(--ease);gap:8px;padding-block:4px;font-size:14px;font-weight:500;display:inline-flex}.sx-links a:hover{translate:3px}.sx-links a span{color:var(--tone-ink,var(--tone))}.sx-actions{margin-top:30px}.sv-groups{gap:40px;display:grid}.sv-group{grid-template-columns:minmax(180px,240px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.sv-group-title{color:var(--hm-fg);align-items:center;gap:10px;font-size:17px;font-weight:600;display:flex;position:sticky;top:100px}.sv-group-title span{background:var(--tone);border-radius:50%;width:8px;height:8px}.sv-group-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.sv-card{border:1px solid var(--hm-border);background:var(--hm-card);min-height:150px;transition:var(--hm-reveal), transform .4s var(--ease), border-color .3s ease, box-shadow .4s ease;border-radius:18px;align-content:start;gap:8px;padding:22px 60px 22px 22px;display:grid;position:relative}.sv-card .hm-arrow{position:absolute;top:18px;right:18px}.sv-card-title{letter-spacing:-.01em;color:var(--hm-fg);font-size:17px;font-weight:600}.sv-card-summary{color:var(--hm-body);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:14px;line-height:1.55;display:-webkit-box;overflow:hidden}.sv-card:is(:hover,:focus-visible){border-color:color-mix(in srgb, var(--tone) 40%, var(--hm-border));box-shadow:var(--hm-shadow-hover);transform:translateY(-4px)}.sv-card:is(:hover,:focus-visible) .hm-arrow{border-color:color-mix(in srgb, var(--tone) 45%, var(--hm-border));background:var(--tone-wash);transform:translate(3px,-3px)}@media (max-width:1099px){.sx{grid-template-columns:1fr;gap:20px}.sx-panel{grid-column:1}.sx-nav{position:static}.sx-rail,.sx-connector{display:none}.sx-nav ol{scrollbar-width:thin;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.sx-tab{white-space:nowrap;border-color:var(--hm-border);min-height:44px}.sx-arrow{display:none}.sx-panel-head,.sv-group{grid-template-columns:1fr}.sv-group-title{position:static}}@media (max-width:640px){.sx-columns{grid-template-columns:1fr}}.sd-visual{max-width:460px;margin-left:auto;padding:14px}.sd-visual-art{aspect-ratio:16/11;background:var(--tone-wash);border-radius:16px;place-items:center;display:grid}.sd-visual-art .sv-flow{animation-play-state:running}.sd-meta{grid-template-columns:repeat(3,minmax(0,1fr));padding:16px 6px 4px;display:grid}.sd-meta div+div{border-left:1px solid var(--hm-border);padding-left:14px}.sd-meta dt{letter-spacing:.08em;text-transform:uppercase;color:var(--hm-faint);font-size:11px}.sd-meta dd{color:var(--hm-fg);margin-top:4px;font-size:15px;font-weight:600}.sd-problems{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.sd-problem{transition:var(--hm-reveal), border-color .4s ease;padding:26px;position:relative;overflow:hidden}.sd-problem:after{content:"";background:var(--tone);transform-origin:0;width:100%;height:2px;transition:scale .6s var(--ease);position:absolute;bottom:0;left:0;scale:0 1}.sd-problem[data-focus]{border-color:color-mix(in srgb, var(--tone) 30%, var(--hm-border))}.sd-problem[data-focus]:after{scale:1}.sd-problem-num{color:var(--tone-ink,var(--tone));font-size:12px;font-weight:600}.sd-problem p{letter-spacing:-.01em;color:var(--hm-fg);margin-top:14px;font-size:18px;line-height:1.4}.sd-features{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.sd-feature{transition:var(--hm-reveal), transform .4s var(--ease), border-color .3s ease, box-shadow .4s ease;padding:24px}.sd-feature:hover{border-color:color-mix(in srgb, var(--tone) 35%, var(--hm-border));box-shadow:var(--hm-shadow-hover);transform:translateY(-4px)}.sd-feature-top{justify-content:space-between;align-items:center;display:flex}.sd-feature-top img{background:var(--tone-wash);width:44px;height:44px;transition:rotate .4s var(--ease);border-radius:12px;padding:8px}.sd-feature:hover .sd-feature-top img{rotate:-6deg}.sd-feature-top span{color:var(--hm-faint);font-size:12px;font-weight:600}.sd-feature h3{letter-spacing:-.01em;color:var(--hm-fg);margin-top:16px;font-size:18px;font-weight:600}.sd-feature p{color:var(--hm-body);margin-top:8px;font-size:14px;line-height:1.6}.sd-deliverables{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.sd-deliverables li{border:1px solid var(--hm-border);background:var(--hm-card);color:var(--hm-fg);border-radius:16px;padding:16px 18px 16px 44px;font-size:15px;line-height:1.45;position:relative}.sd-deliverables li:before{content:"";border-bottom:2px solid #37a88f;border-left:2px solid #37a88f;width:11px;height:6px;position:absolute;top:21px;left:20px;rotate:-45deg}.sd-how{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.sd-how-aside{position:sticky;top:110px}.sd-intro{max-width:760px}.sd-sections{margin-top:32px}.sd-section{border-top:1px solid var(--hm-border);grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:32px;padding-block:32px;display:grid}.sd-section h3{letter-spacing:-.02em;color:var(--hm-fg);align-self:start;font-size:20px;font-weight:600;line-height:1.3;position:sticky;top:100px}.sd-section .prose-content>:first-child{margin-top:0}.sd-stack{gap:8px;display:grid}.sd-stack .hm-head{margin-bottom:28px}.sd-stack-body{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.sd-tools{flex-wrap:wrap;gap:10px;display:flex}.sd-tools li{border:1px solid var(--hm-border);background:var(--hm-card);color:var(--hm-fg);transition:var(--hm-reveal), border-color .3s ease, background-color .3s ease, transform .35s var(--ease);border-radius:14px;padding:12px 18px;font-size:15px;font-weight:500}.sd-tools li:hover{border-color:color-mix(in srgb, var(--tone) 40%, var(--hm-border));background:var(--tone-wash);transform:translateY(-3px)}.sd-siblings{border:1px solid var(--hm-border);background:var(--hm-card);border-radius:18px;padding:22px}.af{padding-left:58px;position:relative}.af-rail{background:var(--hm-border);border-radius:2px;width:2px;position:absolute;top:24px;bottom:24px;left:21px}.af-rail span{border-radius:inherit;background:linear-gradient(var(--tone,#5b7cf0), color-mix(in srgb, var(--tone,#5b7cf0) 40%, var(--hm-accent)));transform-origin:top;scale:1 var(--fill,0);position:absolute;inset:0}.af-list{gap:12px;display:grid}.af-stage{outline-offset:4px;position:relative}.af-node{border:1px solid var(--hm-border-strong);background:var(--hm-bg-1);width:44px;height:44px;color:var(--hm-faint);transition:background-color .35s ease, border-color .35s ease, color .35s ease, box-shadow .35s ease, scale .4s var(--ease);border-radius:50%;place-items:center;font-size:12px;font-weight:650;display:grid;position:absolute;top:18px;left:-58px}.af-card{border:1px solid var(--hm-border);background:var(--hm-card);transition:border-color .35s ease, box-shadow .4s ease, translate .4s var(--ease);border-radius:18px;padding:20px 22px}.af-card h3{letter-spacing:-.01em;color:var(--hm-fg);font-size:18px;font-weight:600}.af-card p{max-height:0;color:var(--hm-body);opacity:0;transition:max-height .45s var(--ease), opacity .3s ease, margin-top .45s var(--ease);font-size:14px;line-height:1.55;overflow:hidden}.af-card .ip-chips{margin-top:12px}.af-stage:is([data-focus],:hover,:focus-visible) .af-node{border-color:var(--tone,#5b7cf0);background:var(--tone,#5b7cf0);color:#fff;box-shadow:0 0 0 6px color-mix(in srgb, var(--tone,#5b7cf0) 18%, transparent);scale:1.06}.af-stage:is([data-focus],:hover,:focus-visible) .af-card{border-color:color-mix(in srgb, var(--tone,#5b7cf0) 40%, var(--hm-border));box-shadow:var(--hm-shadow-hover), 0 0 0 4px color-mix(in srgb, var(--tone,#5b7cf0) 8%, transparent);translate:4px}.af-stage:is([data-focus],:hover,:focus-visible) .af-card p{opacity:1;max-height:120px;margin-top:8px}@media (hover:none){.af-card p{opacity:1;max-height:120px;margin-top:8px}}.pj-grid{perspective:1200px;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.pj-card .hm-project-visual{position:relative}.pj-type{background:color-mix(in srgb, var(--hm-card) 85%, transparent);letter-spacing:.04em;color:var(--hm-body);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600;position:absolute;top:12px;left:12px}.pj-card:is(:hover,:focus-visible) h3,.pj-card:is(:hover,:focus-visible) h2{color:color-mix(in srgb, var(--tone) 35%, var(--hm-fg))}.pj-card h2{letter-spacing:-.03em;transition:translate .35s var(--ease), color .3s ease;margin-top:12px;font-size:clamp(22px,1.9vw,26px);font-weight:600;line-height:1.15}.pj-card h2 span{letter-spacing:-.01em;color:var(--hm-body);margin-top:6px;font-size:15px;font-weight:500;display:block}.pj-card:is(:hover,:focus-visible) h2{translate:0 -2px}@media (max-width:1099px){.sd-problems,.sd-deliverables,.sd-how,.sd-stack-body,.sd-section{grid-template-columns:1fr}.sd-how-aside,.sd-section h3{position:static}.pj-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.pj-grid{grid-template-columns:1fr}.sd-meta{grid-template-columns:1fr 1fr 1fr}}.pj-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.pj-tabs{flex-wrap:wrap;gap:8px;display:flex}.pj-tab{border:1px solid var(--hm-border);background:var(--hm-card);color:var(--hm-body);transition:border-color .25s ease, background-color .25s ease, color .25s ease, translate .3s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:9px 15px;font-size:13.5px;font-weight:500;display:inline-flex}.pj-tab span{color:var(--hm-faint);font-size:11px}.pj-tab:hover{border-color:var(--hm-border-strong);color:var(--hm-fg);translate:0 -2px}.pj-tab[aria-selected=true]{background:var(--hm-btn-bg);color:var(--hm-btn-fg);border-color:#0000}.pj-tab[aria-selected=true] span{color:color-mix(in srgb, var(--hm-btn-fg) 65%, transparent)}.pj-search{border:1px solid var(--hm-border);background:var(--hm-card);color:var(--hm-faint);border-radius:999px;align-items:center;gap:10px;padding:9px 16px;transition:border-color .25s,box-shadow .3s;display:inline-flex}.pj-search:focus-within{border-color:var(--hm-border-strong);box-shadow:0 0 0 4px color-mix(in srgb, var(--hm-accent) 14%, transparent)}.pj-search input{width:180px;color:var(--hm-fg);background:0 0;border:0;outline:none;font-size:14px}.pj-count{color:var(--hm-faint);margin:18px 0 20px;font-size:13px}.pj-cell{display:flex}.pj-cell>*{width:100%}.pj-empty{text-align:center;padding:32px}.pj-empty h2{color:var(--hm-fg);font-size:20px;font-weight:600}.pj-empty p{color:var(--hm-body);margin:8px 0 12px}.pj-stats,.bl-stats,.sk-stats,.ex-stats{max-width:620px}.pd-visual{max-width:460px;margin-left:auto;padding:14px}.pd-visual-art{aspect-ratio:16/11;background:var(--tone-wash);border-radius:16px;place-items:center;display:grid}.pd-visual-art .sv-flow{animation-play-state:running}.pd-overview{grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr);align-items:start;gap:clamp(28px,5vw,64px);display:grid}.pd-prose p{max-width:68ch;color:var(--hm-body);font-size:17px;line-height:1.7}.pd-facts{gap:14px;margin-top:28px;display:grid}.pd-fact{padding:22px 24px}.pd-fact p:not(.hm-label){color:var(--hm-fg);margin-top:10px;font-size:15px;line-height:1.6}.pd-stats{position:sticky;top:110px}.pd-stack{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.pd-stack-group .ip-chips{margin-top:12px}.pd-case{max-width:820px}.ex-timeline{--ex-when:152px;--ex-gap:64px;position:relative}.ex-rail{top:36px;bottom:36px;left:calc(var(--ex-when) + var(--ex-gap) / 2 - 1px);background:var(--hm-border);border-radius:2px;width:2px;position:absolute}.ex-rail span{border-radius:inherit;background:linear-gradient(var(--hm-accent), #7a66e6);transform-origin:top;scale:1 var(--fill,0);position:absolute;inset:0}.ex-timeline ol{gap:24px;display:grid}.ex-role{grid-template-columns:var(--ex-when) minmax(0, 1fr);gap:var(--ex-gap);display:grid}.ex-when{text-align:right;align-self:start;padding-top:28px;position:sticky;top:110px}.ex-year{letter-spacing:-.04em;color:var(--hm-faint);font-size:clamp(26px,2.4vw,34px);font-weight:650;line-height:1;transition:color .35s;display:block}.ex-role[data-focus] .ex-year{color:var(--hm-accent-ink,var(--hm-accent))}.ex-range{color:var(--hm-body);margin-top:10px;font-size:13px;line-height:1.4;display:block}.ex-place{color:var(--hm-faint);margin-top:2px;font-size:12px;line-height:1.4;display:block}.ex-now{color:#137538;background:#22c55e2e;border-radius:999px;margin-top:10px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}:root[data-theme=dark] .ex-now{color:#6ee7b7}.ex-card{padding:clamp(22px,2.4vw,30px) clamp(20px,2.6vw,34px);transition:border-color .35s,box-shadow .4s;position:relative}.ex-card:before{content:"";top:37px;left:calc(var(--ex-gap) / -2 - 8px);border:2px solid var(--hm-border-strong);background:var(--hm-bg-1);border-radius:50%;width:14px;height:14px;transition:background-color .35s,border-color .35s,box-shadow .35s;position:absolute}.ex-role[data-focus] .ex-card{border-color:var(--hm-border-strong);box-shadow:var(--hm-shadow-hover)}.ex-role[data-focus] .ex-card:before{border-color:var(--hm-accent);background:var(--hm-accent);box-shadow:0 0 0 5px color-mix(in srgb, var(--hm-accent) 18%, transparent)}.ex-card h3{letter-spacing:-.02em;color:var(--hm-fg);font-size:clamp(20px,1.8vw,24px);font-weight:600;line-height:1.25}.ex-company{color:var(--hm-accent-ink,var(--hm-accent));margin-top:6px;font-size:15px;font-weight:500}.ex-company a:hover{color:var(--hm-fg);text-underline-offset:4px;text-decoration:underline}.ex-summary{max-width:72ch;color:var(--hm-body);margin-top:12px;font-size:15px;line-height:1.65}.ex-details{border-top:1px solid var(--hm-border);margin-top:20px;padding-top:16px}.ex-details summary{cursor:pointer;letter-spacing:.02em;min-height:32px;color:var(--hm-fg);justify-content:space-between;align-items:center;gap:16px;font-size:13px;font-weight:600;list-style:none;display:flex}.ex-details summary::-webkit-details-marker{display:none}.ex-details summary span{border:1px solid var(--hm-border);width:24px;height:24px;color:var(--hm-faint);transition:rotate .35s var(--ease), border-color .3s ease;border-radius:50%;place-items:center;display:grid}.ex-details[open] summary span{border-color:var(--hm-accent);color:var(--hm-accent-ink,var(--hm-accent));rotate:45deg}.ex-details ul{gap:10px;max-width:76ch;margin-top:14px;display:grid}.ex-details li{color:var(--hm-body);padding-left:20px;font-size:14.5px;line-height:1.6;position:relative}.ex-details li:before{content:"";background:var(--hm-accent);width:8px;height:1px;position:absolute;top:11px;left:0}.ex-tech{margin-top:18px}.ex-details+.ex-tech{margin-top:16px}.ex-quotes{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;display:grid}.ex-certs{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:14px;display:grid}.ex-cert{border:1px solid var(--hm-border);background:var(--hm-card);height:100%;transition:transform .35s var(--ease), border-color .3s ease, box-shadow .35s ease;border-radius:16px;gap:8px;padding:18px 20px;display:grid}a.ex-cert:hover{border-color:var(--hm-border-strong);box-shadow:var(--hm-shadow-hover);transform:translateY(-3px)}.ex-cert-title{color:var(--hm-fg);font-size:15px;font-weight:500;line-height:1.4}.ex-cert-link{color:var(--hm-accent-ink,var(--hm-accent));font-size:12px;font-weight:600}.ex-quote{flex-direction:column;justify-content:space-between;height:100%;padding:clamp(22px,2.4vw,28px);display:flex}.ex-quote blockquote{color:var(--hm-body);font-size:16px;line-height:1.65}.ex-quote figcaption{border-top:1px solid var(--hm-border);gap:2px;margin-top:18px;padding-top:16px;font-size:14px;display:grid}.ex-quote strong{color:var(--hm-fg)}.ex-quote figcaption span{color:var(--hm-faint);font-size:13px}.ed-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.ed-list>li{display:flex}.ed-card{flex-direction:column;flex:1;gap:20px;padding:clamp(22px,2.4vw,30px);transition:border-color .35s,box-shadow .4s;display:flex}.ed-card:hover{border-color:var(--hm-border-strong)}.ed-institution{letter-spacing:-.02em;color:var(--hm-fg);text-wrap:balance;margin-top:10px;font-size:clamp(19px,1.6vw,22px);font-weight:600;line-height:1.3}.ed-body{gap:16px;display:grid}.ed-facts{gap:12px;display:grid}.ed-facts dt{letter-spacing:.12em;text-transform:uppercase;color:var(--hm-faint);font-size:11px;font-weight:600}.ed-facts dd{color:var(--hm-accent-ink,var(--hm-accent));margin-top:3px;font-size:15px;font-weight:500;line-height:1.45}.ed-description{border-top:1px solid var(--hm-border);color:var(--hm-body);padding-top:16px;font-size:15px;line-height:1.65}.ed-list.has-featured{grid-template-columns:repeat(2,minmax(0,1fr))}.ed-list.has-featured>li:first-child{grid-column:1/-1}.ed-card.is-featured{background:radial-gradient(ellipse 60% 90% at 0% 0%, var(--tone-wash), transparent 70%), var(--hm-card);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(24px,4vw,56px);padding:clamp(24px,3.2vw,40px);display:grid}.ed-card.is-featured .ed-institution{font-size:clamp(24px,2.4vw,32px);line-height:1.15}.ed-card.is-featured .ed-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.ed-card.is-featured .ed-facts dd{font-size:16px}@media (max-width:1099px){.ed-list,.ed-list.has-featured{grid-template-columns:1fr}.ed-card,.ed-card.is-featured{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px 32px;display:grid}}@media (max-width:640px){.ed-card,.ed-card.is-featured{grid-template-columns:1fr;gap:16px}.ed-card.is-featured .ed-facts{grid-template-columns:1fr;gap:12px}}.sk-chain{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.sk-node{border:1px solid var(--hm-border);background:var(--hm-card);color:var(--hm-body);transition:border-color .3s ease, background-color .3s ease, color .3s ease, translate .3s var(--ease);border-radius:16px;align-items:center;gap:10px;padding:12px 18px;font-size:15px;display:inline-flex}.sk-node:hover{color:var(--hm-fg);translate:0 -2px}.sk-dot{background:var(--tone);border-radius:50%;width:8px;height:8px}.sk-node-count{color:var(--hm-faint);font-size:11px}.sk-node[aria-current=true]{border-color:color-mix(in srgb, var(--tone) 45%, var(--hm-border));background:var(--tone-wash);color:var(--hm-fg);font-weight:600}.sk-body{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.sk-items{border:1px solid var(--hm-border);background:var(--hm-card);animation:hm-panel-in .4s var(--ease) both;border-radius:22px;padding:26px}.sk-items ul{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.sk-chip{border:1px solid var(--hm-border);background:var(--hm-card-2);color:var(--hm-body);transition:border-color .25s ease, background-color .25s ease, color .25s ease, translate .3s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;display:inline-flex}.sk-chip:hover,.sk-chip[aria-pressed=true]{border-color:color-mix(in srgb, var(--tone) 45%, var(--hm-border));background:var(--tone-wash);color:var(--hm-fg);translate:0 -2px}.sk-chip-count{color:var(--tone-ink,var(--tone));font-size:11px}.sk-detail{border:1px solid color-mix(in srgb, var(--tone) 20%, var(--hm-border));background:var(--tone-wash);border-radius:22px;min-height:220px;padding:26px;position:sticky;top:110px}.sk-detail-inner{animation:hm-panel-in .35s var(--ease) both}.sk-detail h3{letter-spacing:-.02em;color:var(--hm-fg);margin-top:12px;font-size:24px;font-weight:600}.sk-usage{color:var(--hm-body);margin-top:10px;font-size:14.5px;line-height:1.6}.sk-detail .sx-links{margin-top:14px}.sk-roles{border-top:1px solid color-mix(in srgb, var(--tone) 20%, var(--hm-border));color:var(--hm-body);gap:6px;margin-top:16px;padding-top:14px;font-size:13px;display:grid}.sk-detail-empty p:not(.hm-label){color:var(--hm-body);margin-top:12px;font-size:14.5px;line-height:1.6}.sk-service{border:1px solid var(--hm-border);background:var(--hm-card);border-radius:20px;gap:12px;padding:22px 24px;display:grid}.sk-service-head{align-items:center;gap:12px;display:flex}.sk-service-head h3{color:var(--hm-fg);flex:1;font-size:17px;font-weight:600}.bl-featured{border:1px solid var(--hm-border);background:var(--hm-card);box-shadow:var(--hm-shadow);transition:var(--hm-reveal), transform .42s var(--ease), border-color .35s ease, box-shadow .42s ease;border-radius:26px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0;display:grid;overflow:hidden}.bl-featured:hover{border-color:color-mix(in srgb, var(--tone) 35%, var(--hm-border));box-shadow:var(--hm-shadow-hover);transform:translateY(-4px)}.bl-featured-visual,.bl-visual{background:var(--tone-wash);place-items:center;display:grid;position:relative;overflow:hidden}.bl-featured-visual{min-height:300px}.bl-featured-visual img,.bl-visual img{object-fit:cover;transition:scale .6s var(--ease)}.bl-featured:hover .bl-featured-visual img,.bl-card:hover .bl-visual img{scale:1.03}.bl-featured-body{padding:clamp(24px,3vw,44px)}.bl-featured-body h3{letter-spacing:-.03em;color:var(--hm-fg);margin-top:14px;font-size:clamp(24px,2.4vw,34px);font-weight:600;line-height:1.15}.bl-featured-body p{color:var(--hm-body);margin-top:14px;font-size:16px;line-height:1.65}.bl-featured-body .hm-link{margin-top:18px}.bl-meta{color:var(--hm-faint);flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.bl-cat{border:1px solid color-mix(in srgb, var(--tone) 35%, var(--hm-border));color:var(--tone-ink,var(--tone));border-radius:999px;padding:4px 11px}.bl-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.bl-card{border:1px solid var(--hm-border);background:var(--hm-card);box-shadow:var(--hm-shadow);animation:bl-in .5s var(--ease) both;animation-delay:calc(var(--bl-i,0) * 60ms);transition:transform .4s var(--ease), border-color .3s ease, box-shadow .4s ease;border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden}.bl-card:nth-child(2){--bl-i:1}.bl-card:nth-child(3){--bl-i:2}.bl-card:nth-child(4){--bl-i:3}.bl-card:nth-child(5){--bl-i:4}.bl-card:nth-child(6){--bl-i:5}@keyframes bl-in{0%{opacity:0;transform:translateY(14px)scale(.985)}}.bl-card:hover{border-color:color-mix(in srgb, var(--tone) 32%, var(--hm-border));box-shadow:var(--hm-shadow-hover);transform:translateY(-5px)}.bl-card-link{z-index:2;position:absolute;inset:0}.bl-visual{aspect-ratio:16/10}.bl-body{flex-direction:column;flex:1;padding:22px;display:flex}.bl-body h3{letter-spacing:-.02em;color:var(--hm-fg);transition:translate .35s var(--ease);margin-top:12px;font-size:19px;font-weight:600;line-height:1.3}.bl-card:hover .bl-body h3{translate:0 -2px}.bl-body p{color:var(--hm-body);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:10px;font-size:14.5px;line-height:1.6;display:-webkit-box;overflow:hidden}.bl-more{color:var(--hm-fg);margin-top:auto;padding-top:18px;font-size:13px;font-weight:600}.bl-more span{transition:transform .3s var(--ease);display:inline-block}.bl-card:hover .bl-more span{transform:translate(4px)}.ar-progress{z-index:60;pointer-events:none;background:0 0;height:2px;position:fixed;top:0;left:0;right:0}.ar-progress div{background:linear-gradient(90deg, var(--hm-accent), #5b7cf0);transform-origin:0;height:100%;scale:0 1}.ar-cover{aspect-ratio:4/3;max-width:460px;margin-left:auto;padding:0;position:relative;overflow:hidden}.ar-cover img{object-fit:cover;transform:scale(1.04) translate(calc(var(--px,0) * -4px), calc(var(--py,0) * -4px));transition:transform .6s var(--ease)}.ar-meta{color:var(--hm-faint);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.ar-actions{margin-top:22px}.ar-layout{justify-content:center;display:flex}.ar-body{width:min(760px,100%)}.ar-toc{z-index:40;width:210px;display:none;position:fixed;top:50%;left:clamp(12px,2vw,32px);translate:0 -50%}@media (min-width:1440px) and (pointer:fine){.ar-toc{display:block}}.ar-toc ol{border-left:1px solid var(--hm-border);gap:2px;margin-top:12px;display:grid}.ar-toc a{color:var(--hm-faint);border-left:2px solid #0000;margin-left:-1px;padding:6px 12px;font-size:12.5px;line-height:1.4;transition:color .25s,border-color .25s;display:block}.ar-toc li[data-level="3"] a{padding-left:24px;font-size:12px}.ar-toc a:hover{color:var(--hm-fg)}.ar-toc a[aria-current]{border-left-color:var(--hm-accent);color:var(--hm-fg)}.ar-tags{border-top:1px solid var(--hm-border);margin-top:32px;padding-top:24px}.ar-more{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.ar-next{transition:var(--hm-reveal), transform .4s var(--ease), border-color .3s ease, box-shadow .4s ease;gap:16px;padding:16px;display:grid}.ar-next:hover{border-color:var(--hm-border-strong);box-shadow:var(--hm-shadow-hover);transform:translateY(-4px)}.ar-next-visual{aspect-ratio:16/9;background:var(--hm-card-2);border-radius:14px;place-items:center;display:grid}.ar-next h3{color:var(--hm-fg);margin-top:8px;font-size:18px;font-weight:600;line-height:1.3}.ar-next-excerpt{color:var(--hm-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;font-size:14px;line-height:1.55;display:-webkit-box;overflow:hidden}.ct-preselect{color:var(--hm-fg)}.ct-details dl{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;display:grid}.ct-details dd{color:var(--hm-fg);gap:4px;margin-top:8px;font-size:15px;display:grid}.ct-details dd a:hover{text-underline-offset:4px;text-decoration:underline}.ct-next{color:var(--hm-body);font-size:14px;line-height:1.6}.inner-shell .ct-socials{margin-top:22px}.ct-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(28px,5vw,72px);display:grid}.ct-intro{position:sticky;top:110px}.ct-intro .hm-title{margin-top:16px}.ct-intro .hm-intro{margin-top:18px}.ct-list{gap:10px;margin-top:22px;display:grid}.ct-list li{color:var(--hm-body);padding-left:22px;font-size:14.5px;position:relative}.ct-list li:before{content:"";border-bottom:2px solid #37a88f;border-left:2px solid #37a88f;width:10px;height:6px;position:absolute;top:9px;left:0;rotate:-45deg}.ct-card{padding:clamp(22px,3vw,38px)}.ct-steps{justify-content:space-between;gap:6px;padding-bottom:20px;display:flex;position:relative}.ct-steps-rail{background:var(--hm-border);border-radius:2px;height:2px;position:absolute;bottom:12px;left:0;right:0}.ct-steps-rail span{border-radius:inherit;background:linear-gradient(90deg, var(--hm-accent), #37a88f);transform-origin:0;height:100%;transition:scale .45s var(--ease);display:block}.ct-steps li button{text-align:left;color:var(--hm-faint);gap:3px;transition:color .3s;display:grid}.ct-steps li[data-state=current] button{color:var(--hm-fg)}.ct-steps li[data-state=done] button{color:var(--hm-accent-ink,var(--hm-accent))}.ct-step-num{letter-spacing:.08em;font-size:11px;font-weight:600}.ct-step-label{font-size:12.5px}.ct-panel{min-height:260px;animation:hm-panel-in .35s var(--ease) both;outline:none;padding-top:22px}.ct-question{letter-spacing:-.02em;color:var(--hm-fg);font-size:clamp(20px,2vw,26px);font-weight:600}.ct-hint{color:var(--hm-body);margin-top:8px;font-size:14px}.ct-options{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.ct-option{border:1px solid var(--hm-border);background:var(--hm-card-2);color:var(--hm-body);transition:border-color .25s ease, background-color .25s ease, color .25s ease, translate .3s var(--ease);border-radius:14px;padding:12px 18px;font-size:15px}.ct-option:hover{color:var(--hm-fg);translate:0 -2px}.ct-option[aria-pressed=true]{border-color:var(--hm-fg);background:var(--hm-btn-bg);color:var(--hm-btn-fg)}.ct-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.ct-field{margin-top:16px;display:block;position:relative}.ct-field input,.ct-field textarea{border:1px solid var(--hm-border);background:var(--hm-card-2);width:100%;font:inherit;color:var(--hm-fg);border-radius:14px;outline:none;padding:22px 16px 10px;font-size:15px;transition:border-color .25s,box-shadow .3s,background-color .3s}.ct-field textarea{resize:vertical}.ct-field span{color:var(--hm-faint);pointer-events:none;transition:top .2s var(--ease), font-size .2s var(--ease), color .2s ease;font-size:15px;position:absolute;top:17px;left:17px}.ct-field :is(input,textarea):focus+span,.ct-field :is(input,textarea):not(:placeholder-shown)+span{letter-spacing:.06em;text-transform:uppercase;color:var(--hm-faint);font-size:11px;top:7px}.ct-field :is(input,textarea):focus{border-color:color-mix(in srgb, var(--hm-accent) 50%, var(--hm-border));box-shadow:0 0 0 4px color-mix(in srgb, var(--hm-accent) 14%, transparent)}.ct-summary{border-top:1px solid var(--hm-border);margin-top:22px;padding-top:18px}.ct-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px;display:grid}.ct-summary dt{letter-spacing:.08em;text-transform:uppercase;color:var(--hm-faint);font-size:11px}.ct-summary dd{color:var(--hm-fg);margin-top:4px;font-size:14px}.ct-actions{border-top:1px solid var(--hm-border);flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:26px;padding-top:22px;display:flex}.ct-actions .hm-button[disabled]{opacity:.45;pointer-events:none}.ct-privacy{min-width:200px;color:var(--hm-faint);flex:1;font-size:12px}.ct-privacy a{text-underline-offset:3px;text-decoration:underline}.ct-error{color:var(--hm-fg);background:#e2653d1f;border:1px solid #e2653d66;border-radius:12px;margin-top:18px;padding:12px 16px;font-size:14px}.ct-done{text-align:center;place-items:center;gap:10px;padding:40px 20px;display:grid}.ct-check{color:#37a88f;width:56px;height:56px;animation:ct-pop .5s var(--ease) both;background:#37a88f2e;border-radius:50%;place-items:center;display:grid}.ct-check svg{width:26px;height:26px}@keyframes ct-pop{0%{opacity:0;scale:.7}}.ct-done h2{color:var(--hm-fg);font-size:24px;font-weight:600}.ct-done p{max-width:44ch;color:var(--hm-body);font-size:15px;line-height:1.6}@media (max-width:1099px){.pd-overview,.ct-layout,.sk-body,.bl-featured{grid-template-columns:1fr}.pd-stats,.ct-intro,.sk-detail,.ex-when{position:static}.ex-role{grid-template-columns:1fr;gap:12px}.ex-when{text-align:left;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding-top:0;display:flex}.ex-year{font-size:26px}.ex-range,.ex-place,.ex-now{margin-top:0}.ex-timeline ol{gap:32px}.ex-rail,.ex-card:before{display:none}.bl-grid,.ar-more{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.pj-search input{width:100%}.pj-search{flex:1}.bl-grid,.ar-more,.ct-grid,.ct-summary dl{grid-template-columns:1fr}.ct-steps li:not([data-state=current]) .ct-step-label{display:none}}@media (max-width:1599px){.hm-progress a[aria-current] .hm-progress-label{opacity:0;max-width:0}.hm-progress:hover .hm-progress-label,.hm-progress a:focus-visible .hm-progress-label{opacity:1;max-width:90px}}.bk-hero-list{gap:10px;display:grid}.bk-hero-list li{color:var(--hm-body);padding-left:22px;font-size:14.5px;position:relative}.bk-hero-list li:before{content:"";border-bottom:2px solid #37a88f;border-left:2px solid #37a88f;width:10px;height:6px;position:absolute;top:8px;left:0;rotate:-45deg}.bk-hero-list a{color:var(--hm-fg);text-underline-offset:3px;text-decoration:underline}.bk-card{max-width:1080px;margin-inline:auto;padding:clamp(20px,3vw,40px)}.bk-panel{animation:hm-panel-in .35s var(--ease) both;outline:none;padding-top:24px}.bk-reschedule-note{color:var(--hm-body);margin-top:18px;font-size:14px}.bk-reschedule-note strong{color:var(--hm-fg)}.bk-muted{color:var(--hm-body);font-size:14px;line-height:1.6}.bk-muted-block{color:var(--hm-body);overflow-wrap:anywhere;margin-top:4px;font-size:13.5px;display:block}.bk-muted-block a,.bk-muted a,.bk-inline{color:var(--hm-fg);text-underline-offset:3px;font-weight:600;text-decoration:underline}.bk-types{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px;margin-top:20px;display:grid}.bk-type{border:1px solid var(--hm-border);background:var(--hm-card-2);text-align:left;transition:border-color .25s ease, translate .3s var(--ease), box-shadow .3s ease;border-radius:18px;align-content:start;gap:8px;padding:20px 22px;display:grid}.bk-type:hover,.bk-type:focus-visible{border-color:var(--hm-border-strong);box-shadow:var(--hm-shadow-hover);translate:0 -2px}.bk-type[aria-pressed=true]{border-color:var(--hm-accent)}.bk-type-top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.bk-type-name{letter-spacing:-.01em;color:var(--hm-fg);font-size:17px;font-weight:600}.bk-type-duration{background:color-mix(in srgb, var(--hm-accent) 14%, transparent);color:var(--hm-accent-ink,var(--hm-accent));border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.bk-type-desc{color:var(--hm-body);font-size:14px;line-height:1.55}.bk-type-method{letter-spacing:.08em;text-transform:uppercase;color:var(--hm-faint);font-size:12px;font-weight:600}.bk-schedule{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(20px,4vw,48px);display:grid}.bk-cal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.bk-cal-title,.bk-slots-title{letter-spacing:-.01em;color:var(--hm-fg);font-size:18px;font-weight:600}.bk-cal-nav{gap:8px;display:flex}.bk-cal-nav button{border:1px solid var(--hm-border);width:38px;height:38px;color:var(--hm-fg);border-radius:50%;place-items:center;font-size:20px;line-height:1;transition:border-color .25s,background-color .25s;display:grid}.bk-cal-nav button:hover:not(:disabled){border-color:var(--hm-border-strong);background:var(--hm-card-2)}.bk-cal-nav button:disabled{opacity:.35}.bk-cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:18px;display:grid}.bk-cal[aria-busy=true] .bk-day{opacity:.5}.bk-cal-dow{letter-spacing:.08em;text-align:center;text-transform:uppercase;color:var(--hm-faint);padding-bottom:6px;font-size:11px;font-weight:600}.bk-day{aspect-ratio:1;min-height:40px;color:var(--hm-fg);background:color-mix(in srgb, var(--hm-accent) 12%, transparent);transition:background-color .2s ease, color .2s ease, scale .2s var(--ease);border-radius:50%;place-items:center;font-size:15px;font-weight:600;display:grid;position:relative}.bk-day:hover:not(:disabled){background:color-mix(in srgb, var(--hm-accent) 24%, transparent);scale:1.05}.bk-day:disabled{color:var(--hm-faint);background:0 0;font-weight:400}.bk-day[aria-pressed=true]{background:var(--hm-btn-bg);color:var(--hm-btn-fg)}.bk-day[data-today]:after{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;bottom:5px}.bk-tz{border-top:1px solid var(--hm-border);gap:8px;margin-top:22px;padding-top:18px;display:grid}.bk-tz-label{color:var(--hm-body);font-size:13.5px}.bk-tz-label strong{color:var(--hm-fg)}.bk-tz select{border:1px solid var(--hm-border);background:var(--hm-card-2);width:100%;font:inherit;color:var(--hm-fg);border-radius:12px;padding:11px 14px;font-size:14px}.bk-slots-col{min-width:0}.bk-slots-col .bk-muted{margin-top:14px}.bk-slots{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;max-height:420px;margin-top:18px;padding-right:4px;display:grid;overflow-y:auto}.bk-slot{border:1px solid color-mix(in srgb, var(--hm-accent) 45%, var(--hm-border));width:100%;color:var(--hm-accent-ink,var(--hm-accent));border-radius:12px;padding:12px 10px;font-size:14.5px;font-weight:600;transition:background-color .2s,color .2s,border-color .2s}.bk-slot:hover{background:color-mix(in srgb, var(--hm-accent) 10%, transparent)}.bk-slot[aria-pressed=true]{border-color:var(--hm-btn-bg);background:var(--hm-btn-bg);color:var(--hm-btn-fg)}.bk-actions{grid-column:1/-1;margin-top:4px}.bk-actions .hm-button:disabled,.bk-details .hm-button:disabled{opacity:.45;pointer-events:none}.bk-details-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:start;gap:clamp(20px,4vw,44px);display:grid}.bk-aside{border:1px solid var(--hm-border);background:var(--hm-card-2);border-radius:16px;padding:20px;position:sticky;top:110px}.bk-summary{gap:12px;margin-top:14px;display:grid}.bk-summary dt{letter-spacing:.1em;text-transform:uppercase;color:var(--hm-faint);font-size:11px;font-weight:600}.bk-summary dd{color:var(--hm-fg);margin-top:3px;font-size:14.5px;line-height:1.5}.bk-zone-note{color:var(--hm-body)}.bk-details>.bk-summary{max-width:420px;margin-top:18px}.bk-confirm{max-width:820px}.bk-confirm-card{padding:clamp(22px,3.4vw,40px)}.bk-confirm-head h2{letter-spacing:-.02em;color:var(--hm-fg);margin-top:12px;font-size:clamp(22px,2.4vw,30px);font-weight:600}.bk-status{color:#137538;background:#22c55e2e;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}:root[data-theme=dark] .bk-status{color:#6ee7b7}.bk-status.is-pending,.bk-status.is-rescheduled{color:#92400e;background:#f59e0b33}.bk-status.is-cancelled,.bk-status.is-no_show{color:#9a3412;background:#e2653d29}:root[data-theme=dark] .bk-status:is(.is-pending,.is-rescheduled){color:#fcd34d}:root[data-theme=dark] .bk-status:is(.is-cancelled,.is-no_show){color:#fdba74}.bk-confirm-list{border-top:1px solid var(--hm-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;margin-top:24px;padding-top:22px;display:grid}.bk-confirm-list dt{letter-spacing:.1em;text-transform:uppercase;color:var(--hm-faint);font-size:11px;font-weight:600}.bk-confirm-list dd{color:var(--hm-fg);margin-top:4px;font-size:15.5px;line-height:1.5}.bk-confirm-actions{align-items:flex-start}.bk-danger{color:#c2410c}:root[data-theme=dark] .bk-danger{color:#fdba74}.bk-cancel{border:1px solid color-mix(in srgb, #e2653d 35%, var(--hm-border));border-radius:16px;flex-basis:100%;margin-top:4px;padding:18px}.bk-cancel-title{color:var(--hm-fg);font-weight:600}.bk-cancel-actions{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:16px;display:flex}.bk-danger-button{color:#fff;background:#c2410c}.bk-danger-button:hover{background:#9a3412}.bk-confirm-card>.bk-muted{margin-top:14px}@media (max-width:899px){.bk-schedule,.bk-details-grid{grid-template-columns:1fr}.bk-aside{order:-1;position:static}.bk-slots{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));max-height:none}}@media (max-width:560px){.bk-confirm-list{grid-template-columns:1fr}.bk-cal{gap:4px}.bk-day{min-height:36px;font-size:14px}.bk-card .ct-grid{grid-template-columns:1fr}}
