/* Approved line gestures, sharing one uninterrupted glow with the card copy. */
.line-art{padding:0;min-height:440px;height:440px;position:relative;--line:#bdafd9;--pulse:#eae3ff}
body:not(.dusk) .line-art{--line:#8b74b0;--pulse:#715996}
.line-art::before{display:none}.fallback-logo{width:45%;max-height:190px;object-fit:contain}
.world-panel{position:relative;isolation:isolate;background:radial-gradient(ellipse 58% 90% at 76% 32%,#d0c2f511 0%,#d0c2f506 45%,transparent 80%),radial-gradient(ellipse 72% 100% at 70% 78%,#a5afd215 0%,transparent 70%)}
.world-panel .field{display:none}.line-art .shape{pointer-events:none}.line-art .city span{color:var(--muted);font-size:9px}.line-art .mark img{display:block}.line-art .mark img.dark-logo{display:none}body:not(.dusk) .line-art .mark img.dark-logo{display:block}body:not(.dusk) .line-art .mark img.light-logo{display:none}
.project-scene{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:center;width:100%;height:100%;overflow:hidden}.decor{position:absolute;inset:0;pointer-events:none}.shape{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.field{position:absolute;inset:5%;background:radial-gradient(ellipse at 65% 35%,#d0c2f511,transparent 48%),radial-gradient(ellipse at 22% 72%,#a5afd215,transparent 45%);filter:blur(28px);mask-image:radial-gradient(ellipse,#000 26%,transparent 68%)}body:not(.dusk) .field{opacity:.55}
.ink,.halo,.trace{fill:none;stroke-linecap:round;stroke-linejoin:round}.ink{stroke:var(--line);stroke-width:1.65;opacity:0;--ink-alpha:.58;--ink-start:.18}.halo{stroke:var(--line);stroke-width:5;opacity:0;--ink-alpha:.1;--ink-start:0}.trace{stroke:var(--pulse);stroke-dashoffset:var(--draw-from);opacity:0}.trace-tail{stroke-linecap:butt}.trace-head{stroke-width:3.2}.trace-glow-inner{stroke-width:7.5}.trace-glow-outer{stroke-width:12}.secondary{opacity:.5}
.entered .ink,.entered .halo{animation:var(--ink-animation) var(--draw-total) linear var(--draw-delay) both}.entered .trace{animation-name:var(--draw-animation),var(--idle-animation);animation-duration:var(--draw-total),var(--trace-duration);animation-delay:var(--draw-delay),calc(var(--ready) + var(--trace-phase));animation-timing-function:linear,linear;animation-iteration-count:1,infinite;animation-fill-mode:both,none}
.project-scene.offscreen *,.page-hidden .project-scene *{animation-play-state:paused!important}
.project-scene .mark{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:50%;height:43%;margin-left:6%;min-width:0;min-height:0;z-index:1}.project-scene .mark img{width:100%;height:100%;object-fit:contain}.project-scene .dark-logo{display:none}body:not(.dusk) .project-scene .dark-logo{display:block}body:not(.dusk) .project-scene .light-logo{display:none}.project-scene .mark.movement{width:43%;height:42%}.project-scene .mark.lectory{width:48%;height:53%;margin-left:8%;gap:18px}.city{height:43%;width:100%;display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:7px;align-items:center;min-height:0;flex-shrink:0}.city>div{width:100%;height:100%;min-height:0}.city span{font-size:6px;letter-spacing:.08em;color:var(--muted);writing-mode:vertical-rl}

.project-scene .mark.lectory{margin:0;width:62%;height:78%;gap:0;justify-content:space-between}.project-scene .mark.lectory .city{height:36%;display:block;position:relative}.project-scene .mark.lectory .city>div{position:relative}.project-scene .mark.lectory img{position:absolute;inset:0}.project-scene .mark.lectory .city span{position:absolute;right:-20px;top:50%;transform:translateY(-50%)}.scene-fund{container-type:size}.scene-fund .mark.fund{transform:translateY(calc(-1 * min(6.666667cqw,9.090909cqh)))}
@media(max-width:600px){.line-art{height:330px;min-height:330px}.world-panel{background:radial-gradient(ellipse 90% 65% at 65% 72%,#d0c2f511 0%,#d0c2f506 45%,transparent 85%),radial-gradient(ellipse 110% 80% at 40% 88%,#a5afd215 0%,transparent 75%)}}
@media(max-width:360px){.line-art{height:285px;min-height:285px}.line-art .city span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.line-art *{animation:none!important;transition:none!important}.line-art .ink,.line-art .halo{stroke-dasharray:none!important;stroke-dashoffset:0!important;opacity:var(--ink-alpha)!important}.line-art .trace{display:none}.line-art .ink-group{opacity:1!important}}

.english,.contact-card{--panel-top:35px;padding-top:var(--panel-top)}.contact-card{align-items:start}
@media(max-width:1100px){.english,.contact-card{--panel-top:30px}}
@media(max-width:600px){.english,.contact-card{--panel-top:27px}}
@media(max-width:360px){.english,.contact-card{--panel-top:24px}}
/* One shared header, two equal contact actions, a compact social footer. */
.contact-card{grid-template-columns:minmax(0,1fr);gap:25px;padding-bottom:30px}
.contact-copy{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px 36px;align-items:end}
.contact-copy>.eyebrow{grid-column:1/-1;justify-content:flex-start}
.contact .contact-copy h2{margin:0;font-size:clamp(42px,4.8vw,64px);line-height:1.07}
.contact .contact-intro{margin:0 0 7px;max-width:340px;font-size:13px}
.contact-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px}
.contact .contact-primary,.contact .contact-email{min-width:0;min-height:88px;padding:19px 24px}
.contact .contact-primary .contact-link-text strong{font-size:20px}
.contact-socials{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0;padding-top:12px}
.contact .socials{margin:0;gap:25px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.contact-copy{gap:17px 24px}.contact .contact-copy h2{font-size:43px}.contact .contact-intro{font-size:12px}.contact-options{gap:14px}.contact .contact-primary,.contact .contact-email{padding:17px 20px}.contact .socials{gap:18px}}
@media(max-width:360px){.contact .contact-copy h2{font-size:38px}.contact .contact-primary,.contact .contact-email{padding:17px 16px}.contact .socials{gap:0 19px}}

@media(max-width:600px){.contact-card{gap:22px;padding-bottom:24px}.contact-copy{grid-template-columns:minmax(0,1fr);gap:17px}.contact .contact-copy h2{font-size:44px}.contact .contact-intro{margin:0;max-width:320px}.contact-options{grid-template-columns:minmax(0,1fr);gap:12px}.contact .contact-primary,.contact .contact-email{min-height:84px;padding:18px 20px}.contact-socials{display:block;padding-top:13px}.contact .socials{justify-content:flex-start;gap:0 24px;margin-top:5px}}
