:root{--xp-base:#f2f5f9;--xp-ink:#152236;--xp-ink-soft:#3b526f;--xp-accent:#1a4f82;--xp-accent-ink:#0a2d4b;--xp-panel:#f7fafd;--xp-border:#c5d4e6;--xp-shadow:#081e3633}@layer components{.xp-site{background:radial-gradient(120% 100% at 5% 0%, #96b3d373, transparent 55%), radial-gradient(90% 120% at 100% 100%, #345c8a2e, transparent 55%), linear-gradient(180deg, var(--xp-base) 0%, #edf2f8 48%, #f7fbff 100%);min-height:100svh;color:var(--xp-ink);overflow:clip}.xp-noise{opacity:.23;background-image:radial-gradient(#1c222c1a .65px,#0000 .65px);background-size:4px 4px}.xp-orb{filter:blur(88px);opacity:.34;z-index:0;border-radius:100%;width:44rem;height:44rem;position:absolute}.xp-orb-top{background:radial-gradient(circle,#1b5a9475,#0000 68%);top:-18rem;right:-14rem}.xp-orb-bottom{background:radial-gradient(circle,#3e628e4d,#0000 68%);bottom:-22rem;left:-18rem}.xp-header{border-bottom:1px solid color-mix(in oklab, var(--xp-border) 72%, transparent);background:color-mix(in oklab, var(--xp-base) 84%, white 16%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.xp-header-inner{min-height:4.6rem}.xp-logo{align-self:center}.xp-hero{isolation:isolate;perspective:1600px;perspective-origin:50% 30%;z-index:1;border-bottom:1px solid color-mix(in oklab, var(--xp-border) 50%, transparent);background:0 0;min-height:clamp(46rem,96vh,60rem);position:relative;overflow:hidden}.xp-hero-stage{transform-style:preserve-3d;--xp-mx:0;--xp-my:0;--xp-scroll:0;--xp-shift-sky:0px;--xp-shift-back:0px;--xp-shift-mid:0px;--xp-shift-front:0px;--xp-shift-glyph:0px;--xp-shift-card:0px;--xp-glow-x:50%;--xp-glow-y:32%;position:absolute;inset:0}.xp-hero-layer{pointer-events:none;will-change:transform, opacity;position:absolute;inset:0}.xp-hero-sky{mix-blend-mode:multiply;transform:translate3d(calc(var(--xp-mx) * -6px), calc(var(--xp-shift-sky) + (var(--xp-my) * -3px)), 0);background:radial-gradient(120% 90% at 18% 0,#1a3a5e52 0%,#0000 58%),radial-gradient(120% 110% at 86% 8%,#0a274257 0%,#0000 60%),linear-gradient(#0618272e 0%,#08233c1f 36%,#0a2c4c2e 70%,#0d3a6457 100%)}.xp-hero-fixed-bg{z-index:0;pointer-events:none;opacity:clamp(.13, calc(1.05 - var(--xp-exit,0) * 1.4), 1);will-change:opacity;transition:opacity 60ms linear;position:fixed;inset:0;overflow:hidden}.xp-hero-fixed-overlay{mix-blend-mode:multiply;background:radial-gradient(140% 90% at 50% 100%,#040e1a8c 0%,#0000 60%),linear-gradient(#040e1a00 0% 60%,#040e1a73 100%);position:absolute;inset:0}.xp-hero-photo-image{transform:translate3d(calc(var(--xp-mx) * -22px), calc(var(--xp-shift-back) + (var(--xp-my) * -14px)), 0) scale(var(--xp-photo-scale,1.18));filter:brightness(.86)saturate(1.05)contrast(1.04);will-change:transform, filter;background:linear-gradient(#061a2f2e 0%,#071c3157 58%,#071c319e 100%),linear-gradient(94deg,#08203a52 0%,#08203a00 38%),url(https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&w=2400&q=80) 50%/cover no-repeat;animation:16s ease-in-out infinite xp-hero-breathe;position:absolute;inset:-8%}.xp-hero-aurora{background:radial-gradient(46% 38% at calc(20% + var(--xp-mx) * 6%) calc(18% + var(--xp-my) * 4%), #5690c66b, transparent 64%), radial-gradient(40% 34% at calc(82% - var(--xp-mx) * 5%) calc(28% + var(--xp-my) * 3%), #2e66985c, transparent 66%), radial-gradient(50% 44% at calc(56% + var(--xp-mx) * 4%) calc(78% - var(--xp-my) * 5%), #0b325680, transparent 70%);mix-blend-mode:screen;filter:blur(14px);opacity:.78;transform:translate3d(calc(var(--xp-mx) * 14px), calc(var(--xp-shift-mid) + (var(--xp-my) * 8px)), 0) scale(1.08);inset:-16%}.xp-hero-beam{mix-blend-mode:screen;opacity:.55;transform:translate3d(calc(var(--xp-mx) * 30px), calc(var(--xp-my) * 18px), 0);background:linear-gradient(108deg,#0000 0% 38%,#badaf80f 47%,#dcecfc2e 50%,#badaf80f 53%,#0000 62% 100%);animation:11s ease-in-out infinite xp-hero-beam-sweep;inset:-20%}.xp-hero-grid{opacity:.42;transform:translate3d(calc(var(--xp-mx) * 8px), calc(var(--xp-shift-front) + (var(--xp-my) * 5px)), 0) scale(1.04);background-image:linear-gradient(102deg,#dceafc29 0%,#dceafc0a 28%,#dceafc00 62%),repeating-linear-gradient(120deg,#b4d0ec14 0 1px,#0000 1px 44px),repeating-linear-gradient(60deg,#b4d0ec0d 0 1px,#0000 1px 44px);inset:0}.xp-hero-vignette{mix-blend-mode:multiply;background:radial-gradient(70% 60% at 50% 100%,#040e1a8c 0%,#0000 60%),radial-gradient(140% 80% at 50% 0,#0000 50%,#040e1a52 100%)}.xp-hero-spotlight{pointer-events:none;background:radial-gradient(38% 50% at var(--xp-glow-x) var(--xp-glow-y), #a0c8f038 0%, #a0c8f014 38%, transparent 68%);mix-blend-mode:screen;opacity:.9;transition:background .32s;position:absolute;inset:0}.xp-hero-glyphs{pointer-events:none;color:#d6e8fc29;font-family:Manrope,sans-serif;position:absolute;inset:0}.xp-hero-glyph{letter-spacing:.02em;mix-blend-mode:overlay;will-change:transform;font-weight:800;position:absolute}.xp-hero-glyph-mark{letter-spacing:.4em;white-space:nowrap;color:#dcecfc52;transform:translate3d(calc(-50% + (var(--xp-mx) * -22px)), calc((var(--xp-my) * -12px) + (var(--xp-shift-glyph) * .5)), 0);text-shadow:0 18px 40px #00000042;font-family:Playfair Display,serif;font-size:clamp(1.9rem,5.6vw,4.5rem);font-style:italic;font-weight:700;line-height:1;top:2.5rem;left:50%}.xp-hero-glyph-line{writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.42em;text-transform:uppercase;color:#d6e8fc52;transform:translate3d(calc((var(--xp-mx) * -12px) + (var(--xp-shift-glyph) * .4)), calc(var(--xp-my) * -8px), 0) rotate(180deg);mix-blend-mode:normal;font-size:.66rem;top:36%;left:6.5%}.xp-hero-content-shell{z-index:3;flex-direction:column;justify-content:center;min-height:100%;padding:clamp(5rem,10vw,8rem) 0 clamp(4rem,7vw,6rem);display:flex;position:relative}.xp-hero-content{-webkit-backdrop-filter:blur(20px)saturate(1.18);--xp-card-enter:18px;transform:translate3d(0, calc(var(--xp-shift-card,0px) + var(--xp-card-enter,0px)), 0);will-change:transform;opacity:0;background:linear-gradient(155deg,#f4faffdb 0%,#e2eefcbd 50%,#d6e6f8c7 100%);border:1px solid #e4f0ff52;border-radius:1.4rem;padding:clamp(1.4rem,2.6vw,2.1rem);animation:.72s cubic-bezier(.2,.7,.2,1) .12s forwards xp-hero-card-enter;position:relative;box-shadow:0 50px 110px -50px #04162c9e,0 16px 50px -20px #04162c52,inset 0 1px #ffffffbd,inset 0 -1px #ffffff24}@property --xp-card-enter{syntax:"<length>";inherits:false;initial-value:18px}.xp-hero-content:before{content:"";border-radius:inherit;pointer-events:none;mix-blend-mode:overlay;opacity:.65;background:radial-gradient(120% 120%,#ffffff8c,#fff0 56%);position:absolute;inset:0}.xp-hero-content:after{content:"";border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;background:linear-gradient(155deg,#ffffffb3 0%,#fff0 32%,#789cc857 100%) border-box;border:1px solid #0000;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.xp-hero-content>*{z-index:1;position:relative;transform:translateZ(20px)}.xp-hero-content>div:last-child{transform:translateZ(36px)}.xp-hero-scroll-cue{opacity:.78;flex-direction:column;align-items:center;gap:.45rem;text-decoration:none;transition:opacity .2s;display:inline-flex;position:absolute;bottom:clamp(1.2rem,2.4vw,1.8rem);left:50%;transform:translate(-50%)}.xp-hero-scroll-cue:hover{opacity:1}.xp-hero-scroll-line{background:linear-gradient(#dcecfc00 0%,#dcecfc9e 50%,#dcecfc00 100%);width:1px;height:2.4rem;animation:2.6s ease-in-out infinite xp-scroll-pulse}.xp-hero-scroll-label{letter-spacing:.32em;text-transform:uppercase;color:#dcecfcc7;font-family:Manrope,sans-serif;font-size:.62rem;font-weight:800}.xp-main-flow{z-index:2;position:relative}.xp-kicker-dot{background:var(--xp-accent);width:.36rem;height:.36rem;box-shadow:0 0 0 3px color-mix(in oklab, var(--xp-accent) 22%, transparent);vertical-align:middle;border-radius:999px;margin-right:.5rem;animation:2.4s ease-in-out infinite xp-kicker-pulse;display:inline-block}.xp-title-em{background:linear-gradient(115deg,#0a3f6b 0%,#1c6aa8 60%,#0a3f6b 100%) 0 0/200% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;margin-inline-end:-.12em;padding-inline-end:.12em;font-style:italic;font-weight:700;animation:8s ease-in-out infinite xp-title-shimmer;display:inline-block}.xp-logo{color:var(--xp-ink);grid-template-areas:"logo";font-family:Playfair Display,Times New Roman,serif;font-size:clamp(1.5rem,2.6vw,1.95rem);font-weight:700;line-height:1;text-decoration:none;display:inline-grid}.xp-logo:before{content:attr(data-text);letter-spacing:.24em;visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;grid-area:logo}.xp-logo-text{letter-spacing:.2em;grid-area:logo;justify-self:start;transition:color .18s,letter-spacing .2s}.xp-logo:hover .xp-logo-text{letter-spacing:.24em;color:var(--xp-accent-ink)}.xp-nav{gap:0}.xp-nav-link{letter-spacing:.08em;text-transform:uppercase;color:var(--xp-ink-soft);background-color:#0000;align-self:stretch;align-items:center;padding:0 1.05rem;font-family:Manrope,sans-serif;font-size:.88rem;font-weight:700;text-decoration:none;transition:color 80ms;display:flex;position:relative}.xp-nav-link:hover,.xp-nav-link:focus-visible{color:var(--xp-accent-ink);background-color:color-mix(in oklab, var(--xp-accent) 12%, transparent)}.xp-nav-link:focus-visible{outline:1px solid color-mix(in oklab, var(--xp-accent) 60%, transparent);outline-offset:-2px}.xp-link-chip{border:1px solid color-mix(in oklab, var(--xp-border) 82%, transparent);letter-spacing:.06em;text-transform:uppercase;color:var(--xp-ink);background:color-mix(in oklab, var(--xp-panel) 70%, white 30%);border-radius:999px;align-items:center;gap:.35rem;padding:.56rem .9rem;font-family:Manrope,sans-serif;font-size:.81rem;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:inline-flex}.xp-link-chip:hover{border-color:color-mix(in oklab, var(--xp-accent) 40%, var(--xp-border));transform:translateY(-1px);box-shadow:0 9px 20px -14px #151b25a8}.xp-link-quiet{letter-spacing:.06em;text-transform:uppercase;color:var(--xp-ink-soft);align-items:center;font-family:Manrope,sans-serif;font-size:.8rem;font-weight:700;text-decoration:none;transition:color .18s;display:inline-flex}.xp-link-quiet:hover{color:var(--xp-accent-ink)}.xp-cta-main{border:1px solid color-mix(in oklab, var(--xp-accent) 70%, #0a3155);letter-spacing:.06em;text-transform:uppercase;color:#ecf4ff;isolation:isolate;z-index:0;background:linear-gradient(132deg,#0f5b91 0%,#0a3f6b 100%);border-radius:.72rem;align-items:center;gap:.48rem;padding:.72rem 1.08rem;font-family:Manrope,sans-serif;font-size:.81rem;font-weight:700;text-decoration:none;transition:transform .12s,box-shadow .14s,filter .12s,background .12s,border-color .12s,color .12s;display:inline-flex;position:relative;box-shadow:0 15px 28px -18px #072540e6}.xp-cta-main:after{content:"";pointer-events:none;z-index:-1;filter:blur(3px);opacity:0;background:radial-gradient(78% 84%,#1c5a946b 0%,#1c5a9447 30%,#1c5a9429 48%,#1c5a9414 64%,#1c5a9400 82%);border-radius:1.05rem;transition:opacity .14s,transform .14s;position:absolute;inset:-16px;transform:scale(.9)}.xp-cta-main:hover{color:#fff;filter:none;background:linear-gradient(132deg,#080c14 0%,#0d131f 100%);border-color:#396991;transform:translateY(-1px);box-shadow:inset 0 0 0 1px #396991f2,0 18px 38px -16px #184870eb}.xp-cta-main:hover:after{opacity:1;transform:scale(1.06)}.xp-kicker{letter-spacing:.17em;text-transform:uppercase;color:color-mix(in oklab, var(--xp-accent-ink) 62%, var(--xp-ink-soft));font-family:Manrope,sans-serif;font-size:.72rem;font-weight:800}.xp-title{letter-spacing:-.02em;text-wrap:balance;font-family:Playfair Display,Times New Roman,serif;font-size:clamp(2rem,6.2vw,4.2rem);font-weight:700;line-height:1.03}.xp-lead{max-width:42rem;color:var(--xp-ink-soft);font-family:Manrope,sans-serif;font-size:clamp(1.02rem,2.2vw,1.17rem);line-height:1.72}.xp-panel{z-index:1;border:1px solid color-mix(in oklab, var(--xp-border) 82%, transparent);background:linear-gradient(160deg, color-mix(in oklab, var(--xp-panel) 84%, white), color-mix(in oklab, var(--xp-panel) 64%, #ebf4ff)), var(--xp-panel);box-shadow:0 25px 60px -40px var(--xp-shadow), inset 0 1px 0 oklab(100% 0 5.96046e-8/.65);border-radius:1.08rem;padding:1.15rem 1.22rem;position:relative}.xp-panel-highlight{background:radial-gradient(140% 120% at 5% 0,#5e88b442,#0000 64%),linear-gradient(155deg,#eef3f9 0%,#e5ecf5 58%,#dde6f1 100%);padding:1.3rem}.xp-panel-tag{letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklab, var(--xp-accent-ink) 55%, var(--xp-ink-soft));margin-bottom:1rem;font-family:Manrope,sans-serif;font-size:.7rem;font-weight:800}.xp-image-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.xp-image-card{background-position:50%;background-size:cover;border:1px solid #c5d8ee42;border-radius:.72rem;align-items:end;min-height:6.2rem;padding:.72rem;display:flex;overflow:hidden;box-shadow:inset 0 1px #e4eef942}.xp-image-card>span{letter-spacing:.06em;text-transform:uppercase;color:#edf7ff;text-wrap:balance;font-family:Manrope,sans-serif;font-size:.69rem;font-weight:700;line-height:1.4}.xp-highlight-row{color:var(--xp-ink-soft);grid-template-columns:.95rem 1fr;align-items:center;gap:.58rem;font-family:Manrope,sans-serif;font-size:.9rem;font-weight:600;line-height:1.5;display:grid}.xp-section-title{letter-spacing:-.012em;text-wrap:balance;font-family:Playfair Display,Times New Roman,serif;font-size:clamp(1.5rem,4vw,2.4rem);font-weight:700;line-height:1.13}.xp-card-title{color:var(--xp-ink);text-wrap:pretty;font-family:Manrope,sans-serif;font-size:1.02rem;font-weight:800;line-height:1.45}.xp-card-copy{color:var(--xp-ink-soft);margin-top:.64rem;font-family:Manrope,sans-serif;font-size:.95rem;line-height:1.66}.xp-service-card,.xp-mode-card,.xp-area-card{transition:transform .2s,box-shadow .2s,border-color .2s}.xp-area-card{overflow:hidden}.xp-service-card:hover,.xp-mode-card:hover,.xp-area-card:hover{border-color:color-mix(in oklab, var(--xp-accent) 34%, var(--xp-border));transform:translateY(-2px);box-shadow:0 30px 45px -42px #1c202aeb,inset 0 1px #ffffff94}.xp-area-cover{border:1px solid color-mix(in oklab, var(--xp-accent) 24%, var(--xp-border));background-position:50%;background-size:cover;border-radius:.84rem;min-height:9.25rem;margin-bottom:.95rem;position:relative;box-shadow:0 16px 32px -26px #082540d1,inset 0 1px #ffffff4d}.xp-area-cover-badge{background:#164d7de6;border:1px solid #c7dcf28a;border-radius:999px;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin:.72rem;display:inline-flex;box-shadow:0 6px 16px -10px #03172aeb}.xp-list-row{color:var(--xp-ink-soft);grid-template-columns:.48rem 1fr;align-items:center;gap:.55rem;font-family:Manrope,sans-serif;font-size:.88rem;font-weight:600;line-height:1.5;display:grid}.xp-list-dot{background:color-mix(in oklab, var(--xp-accent) 78%, #fff);border-radius:999px;width:.48rem;height:.48rem}.xp-list-dot-soft{background:color-mix(in oklab, var(--xp-accent) 42%, #fff)}.xp-detail{border-top:1px dashed color-mix(in oklab, var(--xp-border) 76%, transparent);padding-top:.72rem}.xp-detail>summary{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklab, var(--xp-accent-ink) 62%, var(--xp-ink-soft));align-items:center;gap:.46rem;font-family:Manrope,sans-serif;font-size:.76rem;font-weight:800;list-style:none;display:inline-flex}.xp-detail>summary::-webkit-details-marker{display:none}.xp-detail>summary:before{content:"+";font-size:.9rem;line-height:1;transition:transform .17s;transform:translateY(-.03rem)}.xp-detail[open]>summary:before{content:"-";transform:translateY(-.03rem)rotate(180deg)}.xp-contact-panel{background:radial-gradient(95% 100% at 95% 0,#517ea847,#0000 58%),linear-gradient(145deg,#f0f5fb 0%,#e5edf7 48%,#dbe5f1 100%);padding:clamp(1.2rem,3vw,2rem)}.xp-footer-bar{z-index:2;background:#0b3f6a;padding:.62rem 1rem;position:relative}.xp-footer-line{letter-spacing:.03em;color:#dce8f4;text-align:center;font-family:Manrope,sans-serif;font-size:.68rem;font-weight:500;line-height:1.4}.xp-footer-link{color:#fff;font-weight:700;text-decoration:none}.xp-footer-link:hover{text-decoration:underline}.xp-reveal{opacity:0;animation:.62s forwards xp-fade-up}.xp-reveal:nth-of-type(2){animation-delay:90ms}.xp-reveal:nth-of-type(3){animation-delay:.15s}.xp-reveal:nth-of-type(4){animation-delay:.21s}.xp-reveal:nth-of-type(5){animation-delay:.27s}@media (width<=48rem){.xp-title{line-height:1.08}.xp-header{background:color-mix(in oklab, var(--xp-base) 91%, white 9%)}.xp-link-chip{padding:.5rem .8rem;font-size:.74rem}.xp-cta-main{padding:.64rem .96rem;font-size:.74rem}.xp-hero{perspective:900px;min-height:clamp(34rem,92vh,40rem)}.xp-hero-content{border-radius:1.1rem;padding:1rem}.xp-hero-content-shell{justify-content:flex-start;padding:clamp(4.5rem,14vw,6rem) 0 clamp(2.5rem,7vw,4rem)}.xp-hero-glyph-mark{letter-spacing:.06em;font-size:clamp(2.5rem,14vw,5rem)}.xp-hero-glyph-line{display:none}.xp-image-strip{grid-template-columns:1fr}.xp-area-cover{min-height:7.4rem}}@media (prefers-reduced-motion:reduce){.xp-reveal{opacity:1;animation:none}.xp-hero-photo-image,.xp-hero-aurora,.xp-hero-beam,.xp-hero-grid,.xp-hero-sky,.xp-hero-glyph,.xp-hero-content{animation:none;transform:none}.xp-hero-scroll-line,.xp-kicker-dot,.xp-title-em{animation:none}.xp-service-card,.xp-mode-card,.xp-area-card,.xp-link-chip,.xp-cta-main,.xp-nav-link{transition:none}}}@keyframes xp-hero-breathe{0%,to{--xp-photo-scale:1.18;filter:brightness(.86)saturate(1.05)contrast(1.04)}50%{--xp-photo-scale:1.24;filter:brightness(.92)saturate(1.1)contrast(1.06)}}@property --xp-photo-scale{syntax:"<number>";inherits:false;initial-value:1.18}@keyframes xp-hero-beam-sweep{0%{opacity:0;background-position:-40% 0}30%{opacity:.55}70%{opacity:.55}to{opacity:0;background-position:140% 0}}@keyframes xp-scroll-pulse{0%,to{opacity:.4;transform:scaleY(.8)}50%{opacity:1;transform:scaleY(1.1)}}@keyframes xp-kicker-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in oklab, var(--xp-accent) 22%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklab, var(--xp-accent) 6%, transparent)}}@keyframes xp-title-shimmer{0%,to{background-position:0%}50%{background-position:100%}}@keyframes xp-hero-card-enter{0%{opacity:0;--xp-card-enter:18px}to{opacity:1;--xp-card-enter:0px}}@keyframes xp-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
