.bym-ruby{--brand:#d71935;--brand-dark:#ad102c;--ruby-deep:#750a20;--ruby-soft:#fff5f4;--ink:#361822;--muted:#79535d;--soft:#fff1f1;--line:#edd5d9;isolation:isolate;color:var(--ink);font-family:var(--font-studio,var(--font-sans)), Arial, sans-serif;background:#fffbfb;position:relative}.bym-ruby em{font-family:var(--font-display), Georgia, serif}.bym-ruby:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(720px 620px at 100% 22%,#ed3f5c0d,#0000 80%),radial-gradient(600px 700px at 0 62%,#ec627513,#0000 80%);position:absolute;inset:0}.bym-ruby:not([data-page=home]) .site-main{padding-top:132px}.bym-ruby .site-main{background:0 0;max-width:none;margin:0}.bym-ruby .reading-progress{background:#f44661;height:2px}.bym-ruby .skip-link{z-index:100;background:var(--ruby-deep);border-radius:10px}.bym-ruby .site-header{color:#4b2230;-webkit-backdrop-filter:blur(26px)saturate(1.35);backdrop-filter:blur(26px)saturate(1.35);background:#fff8f8dc;border:1px solid #ffffffbd;border-radius:20px;width:calc(100% - 48px);max-width:1500px;transition:background .35s,box-shadow .35s;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 45px #660d2210,inset 0 1px #ffffffeb}.is-scrolled .bym-ruby .site-header{background:#fff9f9ee;box-shadow:0 12px 45px #660d2218,inset 0 1px #fff}.bym-ruby .header-inner{gap:25px;max-width:none;height:80px;padding:12px 28px}.bym-ruby .site-header .brand{width:64px}.bym-ruby .header-location{color:#7b4c58;border-color:#d1a0ab66}.bym-ruby .desktop-nav{gap:clamp(22px,2.4vw,38px)}.bym-ruby .desktop-nav a,.bym-ruby .locale-switch{color:#6f424e;font-family:var(--font-studio), Arial, sans-serif}.bym-ruby .desktop-nav a[aria-current],.bym-ruby .desktop-nav a:hover{color:var(--ruby-deep)}.bym-ruby .header-actions{gap:22px}.bym-ruby .header-contact{color:#fff;background:linear-gradient(135deg,#e32642,#bd0b2b);border:1px solid #e9556b66;border-radius:12px;gap:22px;min-height:44px;padding:11px 17px;box-shadow:0 6px 20px #c8123529,inset 0 1px #ffffff30}.bym-ruby .header-contact svg{color:#fff}.bym-ruby .header-contact:hover{color:#fff;background:var(--ruby-deep)}.bym-ruby .menu-toggle span{background:var(--ruby-deep)}.bym-ruby .mobile-menu{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:#fff7f7fc;border:1px solid #ffffffc9;border-radius:20px;max-height:calc(100dvh - 126px);padding:24px 28px;position:absolute;inset:calc(100% + 12px) 0 auto;box-shadow:0 25px 80px #6b0a2026}.bym-ruby .mobile-menu nav a{border-color:#e4bcc666;font-size:23px}.bym-ruby .mobile-menu>p{color:#825360;margin-top:28px}.bym-ruby .site-main .button-red{background:linear-gradient(135deg,#df2040,#b60c2b);border-radius:12px;box-shadow:0 10px 30px #c9163429}.bym-ruby .site-main .button-red:hover{background:var(--ruby-deep)}.bym-ruby .site-main .contact-banner{margin:20px var(--gutter) 0;color:#fff;background:var(--ruby-deep);border:1px solid #f3bac6;border-radius:28px;position:relative;overflow:hidden;box-shadow:0 25px 75px #780b2017}.bym-ruby .contact-banner-image{min-height:480px}.bym-ruby .contact-banner-image:after{content:"";pointer-events:none;background:linear-gradient(120deg,#5f061528,#0000 70%,#750a2040);position:absolute;inset:0}.bym-ruby .contact-banner-image figcaption{z-index:1}.bym-ruby .contact-banner-copy{z-index:1;background:radial-gradient(circle at 100% 0,#ec365460,#0000 65%),linear-gradient(145deg,#a20d30b3,#6d0b23db);padding:clamp(34px,4.5vw,66px);position:relative}.bym-ruby .contact-banner-copy:after{z-index:-1;content:"";filter:blur(55px);pointer-events:none;background:#f0475f5c;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-120px;right:-100px}.bym-ruby .site-main .contact-banner .section-label{color:#ffe3e9}.bym-ruby .contact-banner .label-dot{background:#ff8397}.bym-ruby .site-main .contact-banner h2{color:#fff}.bym-ruby .site-main .contact-banner p{color:#f5d2db}.bym-ruby .contact-banner-link{color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff12;border:1px solid #ffffff52;border-radius:12px;min-height:48px;padding:13px 18px}.bym-ruby .contact-banner-link:hover{background:#ffffff21;border-color:#ffffffa8}.bym-ruby .contact-banner-link:focus-visible{outline-color:#fff}.bym-ruby .site-footer{max-width:none;padding:64px var(--gutter) 0;color:#fff;background:radial-gradient(at 10% 0,#bd204b55,#0000 60%),linear-gradient(125deg,#650b23,#3e081b);border-top:1px solid #ffffff20;margin-top:72px;position:relative;overflow:hidden}.bym-ruby .footer-architecture{color:#f9a0b113;pointer-events:none;width:clamp(180px,25vw,370px);position:absolute;top:28px;right:3%}.bym-ruby .footer-brand img{filter:brightness(0)invert()}.bym-ruby .footer-top{z-index:1;position:relative}.bym-ruby .footer-top h2{color:#fff}.bym-ruby .footer-identity p,.bym-ruby .footer-identity>span,.bym-ruby .footer-top nav,.bym-ruby .footer-location a,.bym-ruby .footer-location a:last-child,.bym-ruby .footer-location a>span,.bym-ruby .footer-bottom{color:#f4d2dc}.bym-ruby .footer-identity p:before{background:#ff718b}.bym-ruby .footer-top nav a:hover,.bym-ruby .footer-location a:hover{color:#fff}.bym-ruby .footer-bottom{font-family:var(--font-studio), Arial, sans-serif;border-color:#ffffff25}.bym-ruby .site-footer a:focus-visible{outline-color:#ffd2dd}.bym-ruby .social-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:320px;margin:0;padding:0;list-style:none;display:grid}.bym-ruby .social-links>li{min-width:0}.bym-ruby .social-links a.social-link{width:100%;min-height:48px;color:var(--ruby-deep);font-family:var(--font-studio), Arial, sans-serif;background:#ffffff73;border:1px solid #dfbac4;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;margin:0;padding:11px 14px;font-size:12px;line-height:1.5;text-decoration:none;transition:background .22s,border-color .22s,transform .22s;display:flex}.bym-ruby .social-links .social-link>svg{flex:0 0 20px}.bym-ruby .social-links .social-link-label{color:inherit;font-size:inherit;white-space:nowrap;margin:0;display:inline}.bym-ruby .social-links a.social-link:focus-visible{outline:2px solid var(--ruby-deep);outline-offset:4px}.bym-ruby .footer-location .social-links{grid-template-columns:repeat(auto-fit,minmax(min(100%,128px),1fr));margin-top:24px}.bym-ruby .footer-location .social-links a.social-link{color:#fff0f4;background:#ffffff08;border-color:#ffffff35}.bym-ruby .footer-location .social-links a.social-link:focus-visible{outline-color:#ffd2dd}.bym-ruby .bym-contact-social{margin-top:30px}.bym-ruby .bym-contact-social>h2{color:var(--ruby-deep);font-family:var(--font-display), Georgia, serif;margin:0 0 16px;font-size:28px;font-weight:400}@media (hover:hover){.bym-ruby .social-links a.social-link:hover{background:#fff;border-color:#b76a7d;transform:translateY(-2px)}.bym-ruby .footer-location .social-links a.social-link:hover{background:#ffffff18;border-color:#ffffff80}}@media (prefers-reduced-motion:reduce){.bym-ruby .social-links a.social-link:hover{transform:none}}.bym-ruby .bym-interior{--interior-line:#ebd3d8;--interior-muted:#77535d;color:var(--ink)}.bym-ruby .bym-interior-intro{padding-top:38px}.bym-ruby .bym-interior-intro h1{color:var(--ruby-deep)}.bym-ruby .bym-interior-link{color:var(--ruby-deep);border-color:#d8a4b0}.bym-ruby .bym-services-visual,.bym-ruby .bym-contact-photo,.bym-ruby .bym-material-main,.bym-ruby .bym-material-detail{border-radius:18px}.bym-ruby .bym-services-visual:after,.bym-ruby .bym-contact-photo:after,.bym-ruby .bym-material-story figure:after{background:linear-gradient(#0000,#590b23c4)}.bym-ruby .bym-services-panel p.bym-service-detail,.bym-ruby .bym-service-number,.bym-ruby .bym-services-figure>figcaption{color:#7b5360}.bym-ruby .bym-material-story{background:radial-gradient(at 0 20%,#f1bdc633,#0000 65%),#fff2f2;border:1px solid #f3d8de;border-radius:28px;margin:0 18px}.bym-ruby .bym-material-copy>p:not(.bym-interior-eyebrow),.bym-ruby .bym-material-notes{color:#79515d}.bym-ruby .bym-material-notes{border-color:#e6c6cf}.bym-ruby .bym-process-section{background:0 0}.bym-ruby .bym-contact-form-wrap{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#fff2f2a6;border:1px solid #fff;border-radius:24px;box-shadow:0 25px 70px #810c1c0b}.bym-ruby .bym-contact-form-intro p,.bym-ruby .bym-contact-form-wrap .consent-field,.bym-ruby .bym-contact-form-wrap .form-submit p,.bym-ruby .bym-contact-links>*>span:first-child{color:#77535d}.bym-ruby .bym-contact-form-wrap .form-grid input,.bym-ruby .bym-contact-form-wrap .form-grid select,.bym-ruby .bym-contact-form-wrap .form-grid textarea{border-color:#d8b6bf}.bym-ruby .bym-contact-form-wrap .form-grid input::placeholder,.bym-ruby .bym-contact-form-wrap .form-grid textarea::placeholder{color:#8c6671;opacity:1}.bym-ruby .ruby-about-people,.bym-ruby .ruby-about-approach{max-width:1580px;padding:0 var(--gutter) 90px;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(48px,6vw,90px);margin:0 auto;display:grid}.bym-ruby .ruby-about-people-team{grid-template-columns:minmax(0,680px);justify-content:center;padding-bottom:120px}.bym-ruby .ruby-about-story h2,.bym-ruby .ruby-about-working h2{max-width:460px;color:var(--ruby-deep);font-family:var(--font-display), Georgia, serif;letter-spacing:-.025em;margin-bottom:28px;font-size:clamp(34px,3.6vw,46px);font-weight:400;line-height:1.12}.bym-ruby .ruby-about-story>p:not(.bym-interior-eyebrow),.bym-ruby .ruby-about-working>p:not(.bym-interior-eyebrow){color:#77535d;max-width:470px;margin-bottom:22px;font-size:14px;line-height:1.95}.bym-ruby .ruby-about-story .bym-interior-eyebrow,.bym-ruby .ruby-about-working .bym-interior-eyebrow{letter-spacing:.08em;margin-bottom:28px;font-size:9px}.bym-ruby .ruby-about-story .bym-interior-link{margin-top:8px;font-size:12px}.bym-ruby .ruby-leaders{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.bym-ruby .ruby-leader{min-width:0}.bym-ruby .ruby-leader:nth-child(2){margin-top:60px}.bym-ruby .ruby-leader-portrait{height:340px;color:var(--ruby-deep);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(at 0 0,#ffffffdb,#0000 70%),linear-gradient(140deg,#ffe9ee,#eab3c1);border:1px solid #ffffffeb;border-radius:26px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 55px #a01b3811,inset 0 1px #fff}.bym-ruby .ruby-leader:nth-child(2) .ruby-leader-portrait{background:radial-gradient(at 90% 0,#ffffffd4,#0000 60%),linear-gradient(130deg,#fce3e8,#e6a9bb)}.bym-ruby .ruby-leader-portrait:after{content:"";pointer-events:none;border:1px solid #ffffff96;border-radius:80px;width:170px;height:280px;position:absolute;top:-20px;right:-70px;transform:rotate(-28deg)}.bym-ruby .ruby-leader-portrait>svg{color:#9d29464d;width:46px;position:absolute;top:30px;left:24px}.bym-ruby .ruby-leader-initials{font-family:var(--font-display), Georgia, serif;letter-spacing:-.06em;font-size:76px;font-weight:400;line-height:1}.bym-ruby .ruby-leader-mark{color:#864153;font-family:var(--font-mono), monospace;letter-spacing:.14em;font-size:9px;position:absolute;inset:auto auto 24px 26px}.bym-ruby .ruby-leader-portrait>img{object-fit:cover;object-position:center 30%}.bym-ruby .ruby-leader-portrait.has-photo:after{content:none}.bym-ruby .ruby-leader-caption{padding:20px 2px 0}.bym-ruby .ruby-leader-caption h3{color:var(--ruby-deep);font-family:var(--font-display), Georgia, serif;letter-spacing:-.02em;margin-bottom:8px;font-size:27px;font-weight:500;line-height:1.2}.bym-ruby .ruby-leader-caption p{color:#805563;margin:0;font-size:10px;line-height:1.7}.bym-ruby .ruby-about-approach{grid-template-columns:.85fr 1.15fr;align-items:start}.bym-ruby .ruby-about-brand{color:#fff;background:radial-gradient(at 100% 0,#f65b7b66,#0000 70%),linear-gradient(145deg,#a30c34,#5e0a26);border:1px solid #ef829a55;border-radius:28px;flex-direction:column;justify-content:space-between;align-items:start;min-height:510px;padding:42px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 75px #880d251a}.bym-ruby .ruby-about-brand>img:not(.ruby-about-brand-logo){object-fit:cover}.bym-ruby .ruby-about-brand-roof{color:#fff3f41a;width:480px;position:absolute;top:80px;right:-80px;transform:rotate(-15deg)}.bym-ruby .ruby-about-brand-logo{filter:brightness(0)invert();width:94px;height:auto;position:relative}.bym-ruby .ruby-about-brand>p{color:#fff;max-width:310px;font-family:var(--font-display), Georgia, serif;letter-spacing:-.025em;margin:80px 0 48px;font-size:43px;line-height:1.13;position:relative}.bym-ruby .ruby-about-brand>span{color:#ffd7e1;font-family:var(--font-mono), monospace;letter-spacing:.07em;font-size:9px}.bym-ruby .ruby-about-working{padding-top:8px}.bym-ruby .ruby-about-working ol{margin:34px 0 0;padding:0;list-style:none}.bym-ruby .ruby-about-working li{border-top:1px solid #ead0d7;grid-template-columns:30px 1fr;gap:22px;padding:22px 0;display:grid}.bym-ruby .ruby-about-working li>span{color:var(--brand);font-family:var(--font-mono), monospace;padding-top:5px;font-size:10px}.bym-ruby .ruby-about-working li h3{letter-spacing:-.025em;margin-bottom:8px;font-size:17px;font-weight:500}.bym-ruby .ruby-about-working li p{color:#77535d;max-width:450px;margin:0;font-size:13px;line-height:1.85}.bym-ruby .bym-principles article{background:#fff1f1a8;border:1px solid #fff;border-radius:20px;padding:26px;box-shadow:0 12px 30px #810c1c05}.bym-ruby .bym-principles{gap:24px}.bym-ruby .bym-principles p{color:#77535d;font-size:13px;line-height:1.9}@media (max-width:1100px){.bym-ruby .header-location{display:none}.bym-ruby .header-inner{gap:20px}.bym-ruby .ruby-about-people,.bym-ruby .ruby-about-approach{gap:42px}.bym-ruby .ruby-leader-portrait{height:290px}.bym-ruby .ruby-about-brand{padding:34px}}@media (max-width:899px){.bym-ruby:not([data-page=home]) .site-main{padding-top:112px}.bym-ruby .site-header{border-radius:18px;width:calc(100% - 28px);top:12px}.bym-ruby .header-inner{height:68px;padding:10px 18px}.bym-ruby .site-header .brand{width:58px}.bym-ruby .header-actions{gap:14px}.bym-ruby .mobile-menu{max-height:calc(100dvh - 108px);inset:calc(100% + 10px) 0 auto}.bym-ruby .contact-banner-image{min-height:420px}.bym-ruby .ruby-about-people,.bym-ruby .ruby-about-approach{grid-template-columns:1fr;gap:40px;padding-bottom:60px}.bym-ruby .ruby-about-people-team{padding-bottom:60px}.bym-ruby .ruby-about-story>p:not(.bym-interior-eyebrow),.bym-ruby .ruby-about-working>p:not(.bym-interior-eyebrow){max-width:640px}.bym-ruby .ruby-leaders{width:100%;max-width:600px}.bym-ruby .ruby-leader-portrait{height:340px}.bym-ruby .ruby-about-brand{min-height:400px}.bym-ruby .ruby-about-brand>p{margin:65px 0 42px}}@media (max-width:600px){.bym-ruby .site-main .contact-banner{border-radius:24px;margin:10px 14px 0}.bym-ruby .contact-banner-image{min-height:300px}.bym-ruby .contact-banner-copy{padding:36px 26px 40px}.bym-ruby .site-footer{margin-top:48px;padding-top:44px}.bym-ruby .bym-interior-intro{padding-top:24px}.bym-ruby .bym-material-story{border-radius:24px;margin:0 10px;padding-left:20px;padding-right:20px}.bym-ruby .ruby-about-people,.bym-ruby .ruby-about-approach{gap:32px;padding-bottom:48px}.bym-ruby .ruby-about-people-team{padding-bottom:48px}.bym-ruby .ruby-about-story h2,.bym-ruby .ruby-about-working h2{max-width:320px;margin-bottom:22px;font-size:36px}.bym-ruby .ruby-about-story>p:not(.bym-interior-eyebrow),.bym-ruby .ruby-about-working>p:not(.bym-interior-eyebrow){font-size:13px;line-height:1.95}.bym-ruby .ruby-leaders{gap:16px}.bym-ruby .ruby-leader:nth-child(2){margin-top:36px}.bym-ruby .ruby-leader-portrait{border-radius:20px;height:230px}.bym-ruby .ruby-leader-initials{font-size:61px}.bym-ruby .ruby-leader-portrait>svg{width:36px;top:22px;left:18px}.bym-ruby .ruby-leader-mark{inset:auto auto 20px 20px}.bym-ruby .ruby-leader-caption{padding-top:15px}.bym-ruby .ruby-leader-caption h3{font-size:24px}.bym-ruby .ruby-leader-caption p{font-size:9px}.bym-ruby .ruby-about-brand{border-radius:24px;min-height:380px;padding:30px}.bym-ruby .ruby-about-brand>p{max-width:260px;margin:65px 0 36px;font-size:38px}.bym-ruby .ruby-about-brand-logo{width:82px}.bym-ruby .ruby-about-working li{gap:14px}}@media (prefers-reduced-motion:reduce){.bym-ruby *,.bym-ruby :before,.bym-ruby :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
