.ray-pg,.ray-pg *,.ray-pg :after,.ray-pg :before{box-sizing:border-box}.ray-pg{all:initial;display:block;--bg:#0a0a0a;--bg-2:#111;--line:rgba(255,255,255,.08);--line-2:rgba(255,255,255,.14);--text:#f5f5f5;--muted:rgba(245,245,245,.55);--accent:#7c3aed;--sans:"Google Sans","Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--body:"General Sans","Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--gutter:clamp(20px,2.9vw,56px);--gap:clamp(48px,5.2vw,100px);--img-gap:clamp(16px,1.9vw,36px);position:relative;z-index:1;font-family:var(--body);color:var(--text);background:var(--bg-2);line-height:1.5;-webkit-font-smoothing:antialiased;font-size:16px}.ray-pg img{max-width:100%;display:block}.ray-pg a{color:inherit;text-decoration:none}.ray-pg button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-appearance:none;appearance:none}.ray-pg blockquote,.ray-pg button,.ray-pg figure,.ray-pg h1,.ray-pg h2,.ray-pg h3,.ray-pg h4,.ray-pg p{margin:0;padding:0}.ray-pg .ld-wrap{max-width:1808px;margin:0 auto;padding:0 var(--gutter);width:100%}.ray-pg .ld-body-lg{font-family:var(--body);font-weight:400;font-size:clamp(1rem,1.4vw,1.5rem);line-height:1.3;color:var(--text)}.ray-pg .ld-intro{max-width:1110px;margin:0 auto}.ray-pg .ray-lead{max-width:1100px;margin:0 auto;text-align:center;font-family:var(--sans);font-weight:500;font-size:clamp(1.5rem,2.8vw,2.6rem);line-height:1.16;letter-spacing:-.01em;color:var(--text)}.ray-pg .ray-lead .pl{color:var(--accent)}.ray-pg .ld-reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.ray-pg .ld-reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.ray-pg .ld-reveal{opacity:1;transform:none;transition:none}}.ray-pg .ld-btn{display:inline-flex;align-items:center;gap:10px;padding:6px 6px 6px 22px;height:48px;border-radius:100px;background:rgba(255,255,255,.07);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);border:1px solid rgba(255,255,255,.18);box-shadow:0 4px 16px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.12);color:#f5f5f5;font-family:var(--sans);font-weight:500;font-size:14px;line-height:1;white-space:nowrap;flex-shrink:0;transition:background .3s,border-color .3s,box-shadow .3s,transform .3s;position:relative;overflow:hidden;cursor:pointer}.ray-pg .ld-btn:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.28);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.3),inset 0 -1px 0 rgba(0,0,0,.12)}.ray-pg .ld-btn .ld-btn-ic{width:36px;height:36px;border-radius:50%;background:#f5f5f5;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .4s cubic-bezier(.5,.05,.2,1)}.ray-pg .ld-btn:hover .ld-btn-ic{transform:rotate(45deg)}.ray-pg .ld-btn .ld-btn-ic svg{width:14px;height:14px;color:#111;display:block}.ray-pg .ld-btn-pri{background:rgba(245,245,245,.92);color:#111;border-color:rgba(255,255,255,.4)}.ray-pg .ld-btn-pri:hover{background:#fff}.ray-pg .ld-btn-pri .ld-btn-ic{background:#0a0a0a}.ray-pg .ld-btn-pri .ld-btn-ic svg{color:#f5f5f5}.ray-pg .ld-btn-sec .ld-btn-ic{background:#f5f5f5}.ray-pg .ld-btn .ld-btn-ic svg.ic-cross,.ray-pg.is-about-open .ld-hero-cta .ld-btn .ld-btn-ic svg.ic-arrow{display:none}.ray-pg.is-about-open .ld-hero-cta .ld-btn .ld-btn-ic svg.ic-cross{display:block}.ray-pg.is-about-open .ld-hero-cta .ld-btn:hover .ld-btn-ic{transform:none}.ray-pg .ld-hero{display:flex;flex-direction:column;min-height:100svh;background:var(--bg-2)}.ray-pg .ld-hero-img{width:100%;height:clamp(320px,57svh,700px);object-fit:cover;object-position:center;flex-shrink:0}.ray-pg .ld-hero-content{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:clamp(36px,4.5vh,64px) var(--gutter) clamp(40px,5vh,72px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.ray-pg .ld-hero-title{font-family:var(--sans);font-weight:600;font-size:clamp(2.5rem,7vw,6rem);line-height:1;letter-spacing:-.02em;color:var(--text);margin-bottom:clamp(18px,2.2vw,34px)}.ray-pg .ld-hero-desc{font-family:var(--body);font-weight:400;font-size:clamp(.95rem,1.25vw,1.25rem);line-height:1.5;color:rgba(245,245,245,.85);max-width:840px;margin-bottom:20px}.ray-pg .ld-hero-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:clamp(24px,2.4vw,40px)}.ray-pg .ld-tag{display:inline-flex;align-items:center;padding:12px 20px;border-radius:30px;background:rgba(245,245,245,.07);font-family:var(--body);font-weight:300;font-size:clamp(13px,.95vw,18px);line-height:1;color:rgba(245,245,245,.56);white-space:nowrap}.ray-pg .ld-hero-cta{position:fixed;left:0;right:0;bottom:18px;display:flex;justify-content:center;z-index:1003;pointer-events:none;transition:right .65s cubic-bezier(.7,0,.2,1);animation:ld-cta-in .9s cubic-bezier(.2,.7,.2,1) .2s backwards}@keyframes ld-cta-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ray-pg .ld-hero-cta{animation:none}}.ray-pg .ld-hero-cta .ld-btn{pointer-events:auto;box-shadow:0 10px 30px rgba(0,0,0,.45)}.ray-pg.is-about-open .ld-hero-cta{right:min(480px,38vw)}.ray-pg .ld-project{display:flex;flex-direction:column;align-items:center;gap:var(--gap);background:var(--bg-2);padding:var(--gap) 0}.ray-pg .ray-fig{width:100%;overflow:hidden;border-radius:clamp(8px,.8vw,16px)}.ray-pg .ray-fig img,.ray-pg .ray-fig picture{display:block;width:100%}.ray-pg .ray-fig img{height:auto}.ray-pg .ray-fig-crop{aspect-ratio:2560/1210}.ray-pg .ray-fig-crop img{height:100%;object-fit:cover;object-position:center top}.ray-pg .ray-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--img-gap);width:100%}.ray-pg .ray-quote{max-width:1272px;margin:0 auto;text-align:center}.ray-pg .ray-quote p{font-family:var(--body);font-weight:300;font-size:clamp(1.2rem,1.9vw,2.1rem);line-height:1.4;color:var(--text)}.ray-pg .bec-approach{width:100%}.ray-pg .bec-approach-title{font-family:var(--sans);font-weight:600;font-size:clamp(1.6rem,2.7vw,2.5rem);line-height:1.1;letter-spacing:-.01em;text-align:center;color:var(--text);margin-bottom:clamp(28px,3.2vw,52px)}.ray-pg .bec-approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,1.6vw,28px)}.ray-pg .bec-card{border:1px solid var(--line);border-radius:clamp(10px,1vw,18px);padding:clamp(22px,2vw,34px);background:rgba(255,255,255,.02)}.ray-pg .bec-card-n{font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.04em;color:var(--accent);margin-bottom:clamp(20px,2.4vw,40px)}.ray-pg .bec-card h3{font-family:var(--sans);font-weight:600;font-size:clamp(1.05rem,1.3vw,1.35rem);line-height:1.2;color:var(--text);margin-bottom:12px}.ray-pg .bec-card p{font-family:var(--body);font-weight:400;font-size:clamp(.92rem,1vw,1.02rem);line-height:1.55;color:rgba(245,245,245,.68)}.ray-pg .rr-store-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.ray-pg .ld-layout{display:flex;align-items:stretch}.ray-pg .ld-main{flex:1 1 auto;min-width:0}.ray-pg .ld-about{flex:0 0 auto;width:0;overflow:clip;background:#181818;transition:width .65s cubic-bezier(.7,0,.2,1);position:relative;--header-clear:clamp(130px,13vh,180px)}.ray-pg.is-about-open .ld-about{width:min(480px,38vw)}.ray-pg .ld-about-inner{width:min(480px,38vw);position:sticky;top:min(0px,calc(100svh - var(--about-h,100svh)));padding:var(--header-clear) clamp(26px,2.2vw,44px) 56px;border-left:1px solid var(--line)}.ray-pg .ld-about-text p{font-family:var(--body);font-weight:400;font-size:clamp(.95rem,1vw,1.0625rem);line-height:1.6;color:rgba(245,245,245,.85)}.ray-pg .ld-about-text p+p{margin-top:1em}.ray-pg .ld-about-meta{margin-top:clamp(36px,4vh,56px);display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}.ray-pg .ld-meta-label{font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.ray-pg .ld-meta-value{font-family:var(--body);font-weight:400;font-size:15px;line-height:1.55;color:var(--text)}.ray-pg .ld-sheet-handle{display:none}.ray-pg .ld-about-backdrop{display:none;position:fixed;inset:0;z-index:1001;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s}@media (max-width:1024px){.ray-pg .bec-approach-grid{grid-template-columns:1fr 1fr}}@media (max-width:860px){.ray-pg .ray-grid{grid-template-columns:1fr}.ray-pg .ld-about,.ray-pg.is-about-open .ld-about{position:fixed;inset:auto 0 0 0;width:auto;height:auto;max-height:84svh;z-index:1002;border-radius:22px 22px 0 0;transform:translateY(102%);transition:transform .5s cubic-bezier(.7,0,.2,1)}.ray-pg.is-about-open .ld-about{transform:translateY(0)}.ray-pg .ld-about.is-dragging{transition:none}.ray-pg .ld-about-inner{width:100%;position:relative;top:auto;height:auto;max-height:84svh;overflow-y:auto;overscroll-behavior:contain;border-left:0;padding:10px 22px 110px}.ray-pg.is-about-open .ld-hero-cta{right:0}.ray-pg .ld-sheet-handle{display:block;width:44px;height:4px;border-radius:2px;background:rgba(245,245,245,.25);margin:8px auto 20px}.ray-pg .ld-about-backdrop{display:block}.ray-pg.is-about-open .ld-about-backdrop{opacity:1;visibility:visible}.ray-pg .ld-about-meta{grid-template-columns:1fr 1fr;gap:22px 18px}}@media (max-width:600px){.ray-pg .bec-approach-grid{grid-template-columns:1fr}}