:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#050b14;--bg-strong:#0a1220;--panel:#0f172ac7;--panel-strong:#111827;--text:#f4f8ff;--muted:#c2cfdf;--border:#94a3b82e;--primary:#f8fbff;--primary-soft:#be185d1f;--accent:#f472b6;--accent-strong:#db2777;--shadow:0 24px 70px #02061794}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at 0 0,#60a5fa29,#0000 28%),radial-gradient(circle at 100% 100%,#a855f71a,#0000 28%),linear-gradient(#050b14 0%,#0b1220 38%,#060d18 100%);margin:0;font-family:Segoe UI,Hiragino Sans,Yu Gothic,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.reform-shell,.page-shell{max-width:1240px;margin:0 auto;padding:32px 28px 96px}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#94a3b82e 0%,#0f172ab8 100%);border:1px solid #cbd5e12e;border-radius:26px;justify-content:space-between;align-items:center;gap:24px;padding:18px 22px;display:flex;box-shadow:0 18px 36px #0f172a2e}.brand-block{flex-direction:column;gap:4px;display:flex}.brand-mark-icon,.site-credit__mark,.site-footer__brand-mark{letter-spacing:-.08em;color:#fff;background:linear-gradient(135deg,#f78dc9 0%,#ee4ca5 35%,#c72678 100%);border:2px solid #b20b4bf5;justify-content:center;align-items:center;font-weight:900;line-height:1;display:inline-flex;position:relative;transform:perspective(600px)rotateX(6deg)rotateY(-10deg);box-shadow:0 0 0 1px #b40b751f,0 10px 16px #dc35842e,inset -7px -8px #a8115e38,inset 6px 8px #ffc5e440}.brand-mark-icon{text-shadow:0 4px #9b106133;border-radius:12px 12px 8px 8px;width:52px;height:52px;font-size:2.4rem}.site-credit__mark,.site-footer__brand-mark{border-radius:6px;width:18px;height:18px;font-size:.9rem}.brand-mark{letter-spacing:-.04em;font-size:clamp(1.2rem,2vw,1.7rem);font-weight:900;line-height:1}.brand-block small{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.brand-author{letter-spacing:.1em;text-transform:uppercase;color:#d0dbea;font-size:.7rem;font-weight:700}.topnav{color:var(--muted);align-items:center;gap:28px;font-size:.92rem;font-weight:600;display:flex}.topnav a:hover{color:var(--text)}.topbar-actions{align-items:center;gap:12px;display:flex}.site-credit{color:#eaf2ff;letter-spacing:.12em;text-transform:uppercase;background:#ffffff14;border:1px solid #94a3b82e;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:.28rem .56rem;font-size:.62rem;font-weight:700;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff29}.reform-header{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172ad1;border:1px solid #94a3b82e;border-radius:26px;justify-content:space-between;align-items:center;gap:22px;padding:18px 22px;display:flex}.brand-wrap{align-items:center;gap:12px;display:flex}.brand-mark-icon,.site-credit__mark,.site-footer__brand-mark{letter-spacing:-.08em;color:#fff1f7;text-shadow:0 4px #88133733;background:linear-gradient(135deg,#f43f5e 0%,#e11d48 38%,#be185d 100%);border:2px solid #7f1d1de6;border-radius:12px 12px 8px 8px;justify-content:center;align-items:center;width:52px;height:52px;font-size:2.2rem;font-weight:900;line-height:1;display:inline-flex;position:relative;transform:perspective(600px)rotateX(6deg)rotateY(-10deg);box-shadow:0 0 0 1px #be185d1f,0 12px 20px #be185d33,inset -7px -8px #7f1d1d42,inset 6px 8px #fecdd32e}.brand-mark-icon:after,.site-credit__mark:after,.site-footer__brand-mark:after{content:"";background:linear-gradient(#ffffff2e,#94a3b88c);border-radius:0 0 10px 10px;height:12px;position:absolute;inset:auto 0 -10px;transform:skew(-18deg)}.brand-copy{flex-direction:column;gap:4px;display:flex}.brand-name{letter-spacing:-.05em;color:#f8fbff;font-size:clamp(1.1rem,2vw,1.6rem);font-weight:900;line-height:1}.brand-copy small{color:#fff;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.reform-nav{color:#fff;align-items:center;gap:28px;font-size:.92rem;font-weight:600;display:flex}.reform-nav a:hover{color:#fff}.primary-button,.secondary-button{border-radius:999px;justify-content:center;align-items:center;padding:.88rem 1.35rem;font-weight:700;transition:transform .2s,opacity .2s,box-shadow .2s;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg,#161f2cf0 0%,#0f172ae0 54%,#0f766e1a 100%);border:1px solid #94a3b838;box-shadow:0 12px 28px #0206174d}.primary-button.large,.secondary-button.large{padding:1rem 1.5rem}.secondary-button{background:#0f172a9e;border:1px solid #94a3b829;box-shadow:inset 0 1px #ffffff0a,0 8px 18px #0206173d;color:#fff!important}.secondary-button:hover,.secondary-button:focus,.secondary-button:visited{color:#fff!important}.primary-button:hover,.secondary-button:hover{opacity:.96;transform:translateY(-1px);box-shadow:0 20px 40px #0206176b}.hero-section{grid-template-columns:1.15fr .85fr;align-items:center;gap:52px;padding:100px 0 64px;display:grid}.hero-copy{padding:16px 0}.eyebrow{color:#f9a8d4;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px;font-size:.75rem;font-weight:800}.eyebrow.light{color:#ffffffbf}.hero-copy h1,.section-header h2,.cta-banner h2{letter-spacing:-.06em;margin:0}.hero-copy h1{letter-spacing:-.065em;background:linear-gradient(135deg,#fff 0%,#eaf3ff 26%,#d7ebff 52%,#b0d6ff 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(3.1rem,5vw,5rem);line-height:.96}.hero-copy h1 span{color:#0000;background:linear-gradient(135deg,#eaf8ff,#dfeeff 34%,#bfdbfe 66%,#c4b5fd 100%);-webkit-background-clip:text;background-clip:text}.lead{color:var(--muted);max-width:52rem;margin:18px 0 0;font-size:1.12rem;line-height:1.8}.cta-row{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero-inline-link{color:var(--muted);background:#0f172ab3;border:1px solid #94a3b829;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;max-width:620px;margin-top:18px;padding:12px 14px;display:flex}.hero-inline-link span{font-size:.92rem;line-height:1.6}.hero-inline-link a{color:#dbeafe;font-weight:700}.stat-grid{grid-template-columns:repeat(4,minmax(110px,1fr));gap:16px;max-width:620px;margin-top:34px;display:grid}.stat-grid div{background:#0b121dcc;border:1px solid #94a3b82e;border-radius:18px;padding:18px 16px;box-shadow:inset 0 0 0 1px #94a3b814}.stat-grid strong{letter-spacing:-.05em;color:#fff;font-size:clamp(1.5rem,3vw,2rem);line-height:1;display:block}.stat-grid span{color:#fff;margin-top:8px;font-size:.78rem;line-height:1.5;display:block}.hero-inline-link span,.hero-inline-link a,.feature-card h3,.feature-card p,.timeline-item h3,.timeline-item p,.section-header h2,.case-card h3,.case-card p,.story-card h3,.check-item p,.site-footer__brand strong,.site-footer__tagline,.site-footer__meta span,.site-footer__credit,.cta-banner h2{color:#fff}.hero-visual{justify-content:center;display:flex}.proposal-board{background:linear-gradient(#0f172af2,#0d1220eb);border:1px solid #94a3b82e;border-radius:28px;width:min(100%,520px);min-height:500px;padding:18px 18px 22px;position:relative;overflow:hidden;box-shadow:0 30px 70px #02061780}.board-topbar{justify-content:space-between;align-items:center;gap:12px;padding:8px 6px 18px;display:flex}.window-controls{gap:8px;display:flex}.dot{border-radius:999px;width:10px;height:10px;display:inline-block}.dot-red{background:#fb7185}.dot-yellow{background:#fbbf24}.dot-green{background:#34d399}.board-title{color:#ffffffb3;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.board-scene{background:linear-gradient(#0f766e1f,#3b82f614),#ffffff0a;border:1px solid #94a3b81f;border-radius:22px;grid-template-columns:1.1fr .9fr;gap:18px;min-height:420px;padding:18px 16px 16px;display:grid;position:relative}.cad-layer,.ai-layer{background:#0f172a6b;border:1px solid #94a3b81a;border-radius:18px;padding:16px 12px 14px;position:relative}.layer-badge{color:#dbeafe;letter-spacing:.12em;text-transform:uppercase;background:#7dd3fc1f;border-radius:999px;justify-content:center;align-items:center;min-width:54px;padding:.38rem .7rem;font-size:.68rem;font-weight:700;display:inline-flex}.floor-plan{background:#ffffff0a;border-radius:16px;grid-template-columns:1.3fr .7fr;gap:10px;min-height:250px;margin-top:16px;padding:10px;display:grid}.room{color:#e2e8f0;letter-spacing:.04em;background:#ffffff14;border:1px solid #94a3b838;border-radius:14px;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.room-lg{grid-column:1/span 1;min-height:118px}.room-sm{min-height:86px}.room-md{min-height:120px}.ai-layer{flex-direction:column;display:flex}.room-render{background:linear-gradient(#0f766e33,#3b82f61a),url(https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=900&q=80) 50%/cover no-repeat;border:1px solid #ffffff14;border-radius:18px;flex:1;margin-top:16px;position:relative;overflow:hidden}.render-glow{filter:blur(12px);background:radial-gradient(circle,#ffffffb8,#3b82f62e 28%,#0000 70%);border-radius:50%;width:120px;height:120px;position:absolute;inset:10% 8% auto auto}.floating-tags{flex-wrap:wrap;justify-content:center;gap:8px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.floating-tags span{color:#e0f2fe;letter-spacing:.08em;text-transform:uppercase;background:#0f172aad;border:1px solid #7dd3fc33;border-radius:999px;justify-content:center;align-items:center;padding:.42rem .7rem;font-size:.64rem;font-weight:700;display:inline-flex}.panel-card{box-shadow:var(--shadow);background:linear-gradient(#ffffffe6,#f8fafce6);border:1px solid #94a3b824;border-radius:26px;padding:28px 24px;position:relative}.card-main{min-height:295px}.panel-tag{color:#1d4ed8;letter-spacing:.12em;text-transform:uppercase;background:#dbeafe;border-radius:999px;padding:.4rem .8rem;font-size:.7rem;font-weight:800;display:inline-flex}.panel-card h2{letter-spacing:-.05em;margin:18px 0;font-size:clamp(1.8rem,2vw,2.6rem);line-height:1.1}.panel-card ul{color:var(--muted);margin:0;padding-left:1.1rem;line-height:1.9}.card-mini{justify-content:center;align-items:center;min-height:130px;display:flex;overflow:hidden}.mini-label{color:#3b82f6;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;position:absolute;top:18px;left:18px}.mini-thumb{background:linear-gradient(135deg,#0ea5e92e,#3b82f647),url(https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80) 50%/cover no-repeat;border-radius:18px;width:100%;height:110px;box-shadow:inset 0 0 0 1px #ffffffb3}.proposal-demo{padding-top:22px}.proposal-demo__layout{grid-template-columns:1fr 1fr;gap:32px;margin-top:20px;display:grid}.proposal-panel{background:#0f172ad1;border:1px solid #94a3b82e;border-radius:26px;padding:18px;box-shadow:0 18px 30px #02061759}.proposal-panel__header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.proposal-panel__header span{color:#0369a1;letter-spacing:.1em;text-transform:uppercase;background:#0ea5e914;border-radius:999px;justify-content:center;align-items:center;min-width:54px;padding:.4rem .7rem;font-size:.68rem;font-weight:800;display:inline-flex}.proposal-panel__header strong{letter-spacing:-.04em;color:#f8fbff;font-size:1rem}.proposal-floorplan{background:linear-gradient(#0f766e14,#3b82f60f);border:1px solid #94a3b81f;border-radius:18px;grid-template-columns:1.3fr .7fr;gap:10px;min-height:238px;padding:10px;display:grid}.proposal-room{color:#f1f7ff;letter-spacing:.04em;background:#0f172a29;border:1px solid #94a3b842;border-radius:14px;justify-content:center;align-items:center;font-weight:800;display:flex}.proposal-room--lg{min-height:120px}.proposal-room--sm{min-height:86px}.proposal-room--md{min-height:120px}.proposal-panel--ai{background:linear-gradient(#0f172af5,#111827e0);border-color:#7dd3fc2e}.proposal-panel--ai .proposal-panel__header span{color:#e0f2fe;background:#7dd3fc1f}.proposal-panel--ai .proposal-panel__header strong{color:#f8fafc}.proposal-render{background:linear-gradient(#7dd3fc2e,#3b82f61f),url(https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80) 50%/cover no-repeat;border:1px solid #ffffff14;border-radius:18px;min-height:238px;position:relative;overflow:hidden}.proposal-render:before{content:"";background:linear-gradient(135deg,#0ea5e92e,#a855f70f,#ffffff24);position:absolute;inset:0}.proposal-glow{filter:blur(12px);background:radial-gradient(circle,#ffffffe6,#38bdf84d 32%,#0000 72%);border-radius:50%;width:150px;height:150px;position:absolute;top:12%;right:14%}.proposal-summary{background:#0f172ad1;border:1px solid #94a3b824;border-radius:24px;grid-template-columns:1.3fr .7fr;gap:32px;margin-top:32px;padding:34px 30px;display:grid}.proposal-summary__copy h3{letter-spacing:-.05em;color:#f8fbff;margin:0 0 10px;font-size:clamp(1.35rem,2vw,2rem)}.proposal-summary__copy p{color:#d5e0ee;margin:0;line-height:1.8}.proposal-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.proposal-metrics div{background:linear-gradient(#3b82f60d,#0ea5e905);border:1px solid #94a3b81f;border-radius:18px;flex-direction:column;justify-content:center;gap:6px;padding:16px 14px;display:flex}.proposal-metrics strong{color:#dfeafc;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.proposal-metrics span{letter-spacing:-.04em;color:#f4f8ff;font-size:1.1rem;font-weight:800}.section{padding-top:112px}.section-header{justify-content:space-between;align-items:end;gap:18px;margin-bottom:40px;display:flex}.section-header h2,.cta-banner h2{color:#edf3ff;letter-spacing:-.05em;font-size:clamp(2.1rem,3vw,2.8rem);line-height:1.08}.section-badge{color:#1d4ed8;letter-spacing:.1em;text-transform:uppercase;background:#2563eb14;border-radius:999px;justify-content:center;align-items:center;padding:.5rem .8rem;font-size:.68rem;font-weight:800;display:inline-flex}.story-grid,.feature-grid,.case-study-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.story-card,.feature-card,.case-card{background:#0f172abf;border:1px solid #94a3b824;border-radius:24px;padding:26px 22px;box-shadow:0 18px 30px #02061740}.highlight-card{background:linear-gradient(135deg,#3b82f614,#0ea5e914)}.story-card h3,.feature-card h3,.case-card h3{letter-spacing:-.05em;color:#f3f8ff;margin:0 0 12px;font-size:1.45rem}.story-card p,.feature-card p,.case-card p{color:var(--muted);margin:0;line-height:1.7}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.feature-card{min-height:240px;padding:32px 26px}.feature-badge{color:#f9a8d4;letter-spacing:.12em;text-transform:uppercase;background:#f472b61a;border-radius:999px;margin-bottom:16px;padding:.38rem .7rem;font-size:.68rem;font-weight:800;display:inline-flex}.feature-icon{color:#edf4ff;background:linear-gradient(135deg,#3b82f62e,#a855f72e);border-radius:16px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:18px;font-weight:900;display:inline-flex}.case-study-grid{grid-template-columns:1fr}.case-card{background:#fffc;grid-template-columns:240px 1fr;gap:18px;padding:0;display:grid;overflow:hidden}.case-card__media{background:linear-gradient(150deg,#3b82f633,#a855f71f),url(https://images.unsplash.com/photo-1494526585095-c41746248156?auto=format&fit=crop&w=1200&q=80) 50%/cover no-repeat;min-height:220px}.case-card__content{padding:24px 24px 22px 0}.case-tag{color:#0369a1;letter-spacing:.12em;text-transform:uppercase;background:#0ea5e914;border-radius:999px;padding:.38rem .7rem;font-size:.68rem;font-weight:800;display:inline-flex}.case-metric{color:#edf4ff;margin-top:16px;font-size:.82rem;font-weight:700}.case-links{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.case-link{color:#111827;background:#ffffffbf;border:1px solid #0f172a14;border-radius:999px;align-items:center;padding:.7rem .9rem;font-size:.82rem;font-weight:700;display:inline-flex}.compact-case-summary{padding:22px 24px}.check-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.check-item{background:#ffffff9e;border:1px solid #94a3b824;border-radius:18px;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.check-item span{color:#16a34a;background:#22c55e1a;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-weight:900;display:inline-flex}.check-item p{color:var(--muted);margin:0;line-height:1.7}.cta-banner{color:#edf4ff;background:linear-gradient(135deg,#0f172af5,#0b121ef0);border:1px solid #94a3b824;border-radius:30px;justify-content:space-between;align-items:center;gap:24px;margin-top:100px;padding:42px 36px;display:flex;box-shadow:0 18px 40px #0206176b}.cta-stack{flex-wrap:wrap;gap:12px;display:flex}.light-button{color:#0f172a;background:#fff}.site-footer{color:#dfeafc;border-top:1px solid #94a3b826;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:26px;margin-top:36px;padding:30px 0 0;display:flex}.site-footer__brand-block{flex-direction:column;gap:8px;display:flex}.site-footer__brand,.site-footer__meta,.site-footer__credit{align-items:center;gap:10px;display:flex}.site-footer__brand{color:#f8fbff;font-weight:700}.site-footer__brand-mark{border-radius:8px;width:28px;height:28px;font-size:1.1rem}.site-footer__tagline{color:#c3d1e6;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.site-footer__meta{color:#dfeafc;flex-wrap:wrap;font-size:.9rem}.site-footer__credit{text-transform:uppercase;letter-spacing:.12em;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;font-size:.7rem}.footer-attribution{color:#eaf1ff;font-weight:700}.footer-attribution--muted{color:#c3d1e6}.proposal-page-shell{max-width:1240px;margin:0 auto;padding:32px 28px 96px}.proposal-topbar{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172acc;border:1px solid #94a3b824;border-radius:26px;justify-content:space-between;align-items:center;gap:22px;padding:18px 22px;display:flex}.proposal-hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:42px;padding:76px 0 40px;display:grid}.proposal-hero__copy h1{letter-spacing:-.065em;background:linear-gradient(135deg,#fff 0%,#eaf3ff 28%,#dbeafe 56%,#bfdbfe 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(2.7rem,4.6vw,4.2rem);line-height:.96}.proposal-hero__visual{justify-content:center;display:flex}.proposal-kpi-row{flex-wrap:wrap;gap:16px;margin-top:26px;display:flex}.proposal-kpi{background:#0f172a85;border:1px solid #94a3b82e;border-radius:16px;min-width:126px;padding:14px 18px;box-shadow:0 10px 30px #0f172a2e}.proposal-kpi strong{color:#f8fbff;letter-spacing:-.05em;font-size:1.25rem;display:block}.proposal-kpi span{color:#cfe0ff;letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:.72rem;display:block}.demo-panel{background:linear-gradient(#0f172af5,#111827e6);border:1px solid #94a3b824;border-radius:28px;width:min(100%,560px);padding:18px 18px 20px;box-shadow:0 28px 70px #0f172a33}.demo-panel__header{color:#ffffffbf;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:8px 6px 14px;font-size:.72rem;display:flex}.demo-panel__content{background:#ffffff0a;border:1px solid #94a3b81f;border-radius:22px;grid-template-columns:1fr 1fr;gap:16px;padding:16px;display:grid}.demo-floorplan{background:#0f172a59;border:1px solid #94a3b824;border-radius:18px;grid-template-columns:1.3fr .7fr;gap:10px;min-height:250px;padding:12px;display:grid}.demo-preview{background:linear-gradient(#7dd3fc24,#3b82f614),url(https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80) 50%/cover no-repeat;border:1px solid #ffffff14;border-radius:18px;min-height:250px;position:relative;overflow:hidden}.preview-surface{filter:blur(12px);background:radial-gradient(circle,#ffffffe6,#38bdf859 28%,#0000 70%);border-radius:50%;width:150px;height:150px;position:absolute;inset:12% auto auto 14%}.proposal-upload{padding-top:42px}.upload-card{background:#0f172ac7;border:1px solid #94a3b824;border-radius:26px;grid-template-columns:.95fr 1.05fr;gap:22px;padding:22px;display:grid;box-shadow:0 18px 30px #0206174d}.upload-dropzone{color:#eaf2ff;text-align:center;background:linear-gradient(#3b82f60a,#7dd3fc0a);border:1.5px dashed #94a3b880;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:260px;display:flex}.upload-icon{color:#0369a1;background:#0ea5e91f;border-radius:20px;justify-content:center;align-items:center;width:74px;height:74px;font-size:2.8rem;font-weight:300;display:inline-flex}.upload-dropzone p{letter-spacing:-.03em;color:#f8fbff;margin:0;font-size:1.3rem;font-weight:700}.upload-dropzone small{color:#d0dbea}.upload-panel{flex-direction:column;gap:18px;display:flex}.upload-panel__row{flex-direction:column;gap:10px;display:flex}.upload-panel__row label{letter-spacing:.1em;color:#dfeafc;text-transform:uppercase;font-size:.78rem;font-weight:800}.upload-panel__row select{width:100%;color:var(--text);font:inherit;background:#fffc;border:1px solid #94a3b833;border-radius:14px;padding:.9rem 1rem}.proposal-summary-box{background:linear-gradient(135deg,#3b82f617,#0ea5e90d);border:1px solid #60a5fa47;border-radius:18px;flex-direction:column;gap:8px;padding:18px 16px;display:flex}.status-note{color:#cfe0ff;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.proposal-summary-box strong{color:#f8fbff;font-size:1rem;line-height:1.5}.chip-list{flex-wrap:wrap;gap:8px;display:flex}.chip{color:#dbeafe;cursor:default;background:#3b82f60d;border:1px solid #94a3b833;border-radius:999px;justify-content:center;align-items:center;padding:.5rem .8rem;font-size:.72rem;font-weight:700;display:inline-flex}.measure-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.measure-grid span{color:#e5edf8;background:#0f172a14;border:1px solid #94a3b82e;border-radius:14px;justify-content:center;align-items:center;padding:.8rem .75rem;font-size:.82rem;font-weight:700;display:inline-flex}.measure-grid--inputs{grid-template-columns:repeat(3,minmax(0,1fr))}.measure-field{color:#e5edf8;background:#0f172a80;border:1px solid #94a3b82e;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;display:flex}.measure-field span,.measure-field small{letter-spacing:.1em;text-transform:uppercase;color:#dfeafc;font-size:.7rem;font-weight:700}.measure-field input{color:#f8fbff;width:100%;font:inherit;text-align:center;background:#ffffff0f;border:1px solid #94a3b82e;border-radius:10px;padding:.55rem .5rem}.proposal-output__layout{grid-template-columns:1.15fr 1fr 1fr;gap:20px;display:grid}.output-card{background:#0f172acc;border:1px solid #94a3b824;border-radius:24px;padding:22px 20px;box-shadow:0 18px 30px #02061742}.big-card{background:linear-gradient(135deg,#3b82f60f,#0ea5e90a)}.output-card h3{letter-spacing:-.05em;margin:14px 0 10px;font-size:1.35rem}.output-card p{color:var(--muted);margin:0;line-height:1.7}.proposal-metadata{gap:12px;margin-top:18px;display:grid}.proposal-metadata div{background:#0f172a80;border:1px solid #94a3b81f;border-radius:14px;padding:12px 12px 10px}.proposal-metadata span{color:#cfe0ff;letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;display:block}.proposal-metadata strong{color:#fff;margin-top:6px;font-size:.92rem;line-height:1.5;display:block}.estimate-shell{max-width:1240px;margin:0 auto;padding:52px 28px 96px}.estimate-card{background:#0f172ad1;border:1px solid #94a3b82e;border-radius:28px;padding:28px;box-shadow:0 22px 42px #02061747}.estimate-card--large{max-width:1160px;margin:0 auto}.estimate-header{border-bottom:1px solid #94a3b81f;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:14px;display:flex}.estimate-header h1,.estimate-header h2{letter-spacing:-.06em;color:#fff;margin:0}.estimate-header h1{font-size:clamp(2.1rem,4vw,3rem)}.estimate-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);align-items:start;gap:26px;display:grid}.estimate-form,.estimate-summary{color:#fff;background:#090f1ab8;border:1px solid #94a3b824;border-radius:22px;padding:22px;box-shadow:inset 0 1px #ffffff08,0 14px 26px #0206172e}.estimate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.estimate-field{flex-direction:column;gap:10px;display:flex}.estimate-field--full{grid-column:1/-1}.estimate-field span{color:#fff;letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:800}.estimate-field input,.estimate-field textarea,.estimate-field select{color:#fff;width:100%;font:inherit;background:#ffffff0f;border:1px solid #94a3b82e;border-radius:14px;padding:.9rem 1rem}.estimate-field input:focus,.estimate-field textarea:focus,.estimate-field select:focus{border-color:#7dd3fc61;outline:none;box-shadow:0 0 0 3px #7dd3fc1f}.estimate-field textarea{resize:vertical;min-height:130px}.estimate-field input::placeholder,.estimate-field textarea::placeholder{color:#bfdbfead}.estimate-status{border-radius:14px;margin-top:20px;padding:.9rem 1rem;font-weight:700}.estimate-status.success{color:#bbf7d0;background:#22c55e1f;border:1px solid #22c55e57}.estimate-status.error{color:#fecaca;background:#ef44441f;border:1px solid #ef444457}.estimate-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.small-button{border-radius:999px;padding:.72rem 1rem;font-size:.8rem}.estimate-header--vertical{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.estimate-table{gap:12px;display:grid}.estimate-row{background:linear-gradient(#0f172ae0 0%,#0f172a85 100%);border:1px solid #94a3b81f;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:.9rem .95rem;display:flex;box-shadow:inset 0 1px #ffffff08,0 10px 18px #0206171f}.estimate-row span,.estimate-row strong{color:#fff}.estimate-total{color:#fff;border-top:1px solid #94a3b824;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding-top:18px;font-size:1.05rem;font-weight:800;display:flex}.estimate-note{color:#fff;margin-top:18px;line-height:1.7}.estimate-request-panel{color:#f8fbff;background:#0f172ad1;border:1px solid #94a3b824;margin-top:30px}.estimate-request-list{gap:12px;margin-top:16px;display:grid}.estimate-request-item{background:#0f172a85;border:1px solid #94a3b824;border-radius:16px;grid-template-columns:1.4fr 1.1fr .9fr;align-items:center;gap:18px;padding:16px 18px;display:grid}.estimate-request-item strong,.estimate-request-item span,.estimate-request-item em{display:block}.estimate-request-item strong{color:#fff;font-size:1rem}.estimate-request-item small{color:#bfd4ef}.estimate-request-item span{color:#dfeafc;font-size:.82rem}.estimate-request-item em{color:#f9a8d4;margin-top:8px;font-style:normal;font-weight:700}.success-shell{place-items:center;min-height:100vh;padding:60px 20px;display:grid}.success-card{text-align:center;background:#0f172ad6;border:1px solid #94a3b82e;border-radius:28px;width:100%;max-width:760px;padding:38px 28px;box-shadow:0 24px 48px #0206174d}.success-badge{color:#dbeafe;letter-spacing:.12em;text-transform:uppercase;background:#3b82f61f;border:1px solid #60a5fa47;border-radius:999px;padding:.52rem .92rem;font-size:.72rem;font-weight:800;display:inline-flex}.success-card h1{letter-spacing:-.06em;margin:18px 0 14px;font-size:clamp(2rem,4vw,3rem)}.success-card p{color:#dfeafc;max-width:580px;margin:0 auto;line-height:1.8}.success-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.job-status{color:#fff;text-transform:uppercase;letter-spacing:.08em;background:#0ea5e914;border:1px solid #7dd3fc5c;border-radius:999px;justify-content:center;align-items:center;padding:.46rem .72rem;font-size:.72rem;font-weight:700;display:inline-flex}@media (max-width:980px){.proposal-topbar,.proposal-hero,.upload-card,.proposal-output__layout{grid-template-columns:1fr;display:grid}.proposal-topbar{flex-direction:column;align-items:flex-start;display:flex}.proposal-hero{padding-top:42px}}@media (max-width:640px){.proposal-page-shell{padding-left:14px;padding-right:14px}.proposal-hero__copy h1{font-size:2.5rem}.measure-grid,.demo-panel__content,.proposal-output__layout{grid-template-columns:1fr}}@media (max-width:980px){.reform-header,.section-header,.cta-banner,.site-footer{flex-direction:column;align-items:flex-start}.reform-nav{flex-wrap:wrap;gap:12px 18px}.hero-section{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.reform-shell{padding-left:14px;padding-right:14px}.topbar{padding:16px}.topbar-actions,.cta-row,.cta-stack{flex-direction:column;align-items:stretch;width:100%}.primary-button,.secondary-button{width:100%}.stat-grid,.story-grid,.feature-grid,.check-list,.case-card{grid-template-columns:1fr}.case-card__content{padding:20px}.site-footer{align-items:flex-start}}.ruby-shell{--ruby-ink:#172f35;--ruby-muted:#43565a;--ruby-muted-on-dark:#bdc9c4;--ruby-paper:#f5f2eb;--ruby-teal:#19434a;--ruby-copper:#d81b60;background:var(--ruby-paper);min-height:100vh;color:var(--ruby-ink);font-family:Segoe UI,Hiragino Sans,Yu Gothic,sans-serif;overflow:clip}.ruby-header,.ruby-hero,.ruby-section,.ruby-bridge,.ruby-contact,.ruby-footer,.ruby-proof-strip{width:min(100% - 64px,1240px);margin-inline:auto}.ruby-header{z-index:50;isolation:isolate;background:0 0;justify-content:space-between;align-items:center;gap:24px;min-height:76px;display:flex;position:sticky;top:0}.ruby-header:before{z-index:-1;background:color-mix(in srgb, var(--ruby-paper) 40%, transparent);content:"";width:100vw;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.ruby-shell section[id],#company-outline{scroll-margin-top:128px}.ruby-brand{color:var(--ruby-ink);align-items:center;gap:11px;display:inline-flex}.ruby-header__brands{align-items:center;display:flex}.ruby-brand__logo{width:180px;height:auto;display:block}.ruby-header__brands .ruby-brand{min-width:0}.ruby-header__brands img{object-fit:contain;width:156px;height:60px}.ruby-header__brands .ruby-brand:focus-visible{outline:2px solid var(--ruby-teal);outline-offset:4px}.ruby-header__actions{align-items:center;gap:clamp(12px,2vw,28px);display:flex}.ruby-header-menu{z-index:10;position:relative}.ruby-header-menu__toggle{min-width:48px;min-height:48px;color:var(--ruby-ink);font:inherit;letter-spacing:.1em;cursor:pointer;background:0 0;border:0;align-content:center;justify-items:center;gap:6px;padding:8px;font-size:8px;font-weight:700;display:grid}.ruby-header-menu__icon{gap:5px;width:24px;display:grid}.ruby-header-menu__icon span{background:currentColor;height:2px;transition:transform .16s,opacity .16s}.ruby-header-menu__toggle[aria-expanded=true] .ruby-header-menu__icon span:first-child{transform:translateY(7px)rotate(45deg)}.ruby-header-menu__toggle[aria-expanded=true] .ruby-header-menu__icon span:nth-child(2){opacity:0}.ruby-header-menu__toggle[aria-expanded=true] .ruby-header-menu__icon span:last-child{transform:translateY(-7px)rotate(-45deg)}.ruby-lease-steps{gap:24px;padding-left:24px;display:grid}#lease-guide{scroll-margin-top:24px}.ruby-header-menu__links{background:color-mix(in srgb, var(--ruby-paper) 96%, transparent);border:1px solid #e1e6df;border-radius:14px;width:min(300px,100vw - 36px);max-height:calc(100dvh - 140px);padding:12px 24px;position:absolute;top:calc(100% + 12px);right:0;overflow-y:auto;box-shadow:0 18px 48px #172f3524}.ruby-header-menu__links a{min-height:52px;color:var(--ruby-ink);border-bottom:1px solid #edf0eb;align-items:center;font-size:13px;font-weight:700;display:flex}.ruby-header-menu__links a:last-child{border-bottom:0}.ruby-header-menu__links a:hover{color:var(--ruby-copper)}.ruby-header-menu__links a[aria-current=location],.ruby-footer__links a[aria-current=location]{color:var(--ruby-copper);font-weight:800}.ruby-header-menu__toggle:focus-visible,.ruby-header-menu__links a:focus-visible{outline:2px solid var(--ruby-teal);outline-offset:3px}.ruby-footer__booking{background:#f7e1e7;border:1px solid #d98aa0;border-radius:999px;padding:9px 12px;color:#7f2948!important}.ruby-footer__booking:hover{background:#fff0f3}.ruby-brand__mark{object-fit:contain;width:36px;height:42px;display:block}.ruby-brand__copy{gap:3px;display:grid}.ruby-brand__copy strong{letter-spacing:.015em;font-size:15px;font-weight:850}.ruby-brand__copy small{color:#819092;letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:700}.ruby-nav{color:#58696c;align-items:center;gap:clamp(14px,2.2vw,32px);font-size:13px;font-weight:700;display:flex}.ruby-nav a,.ruby-text-link,.ruby-footer>a:not(.ruby-brand){transition:color .16s}.ruby-nav a:hover,.ruby-text-link:hover,.ruby-footer>a:not(.ruby-brand):hover{color:var(--ruby-copper)}.ruby-button{border:1px solid var(--ruby-teal);background:var(--ruby-teal);color:#fffdf8;border-radius:999px;justify-content:center;align-items:center;gap:18px;min-height:48px;padding:0 21px;font-size:13px;font-weight:800;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex}.ruby-button:hover{background:#24565e;transform:translateY(-2px);box-shadow:0 10px 24px #172f3529}.ruby-button--nav{min-height:42px;padding-inline:16px;font-size:12px}.ruby-hero{grid-template-columns:.88fr 1.12fr;align-items:center;gap:46px;min-height:570px;padding-block:55px 65px;display:grid;position:relative}.ruby-hero__copy{z-index:1;padding-block:20px;position:relative}.ruby-eyebrow{color:#d98aa0;letter-spacing:.19em;text-transform:uppercase;align-items:center;gap:9px;margin:0;font-size:9px;font-weight:850;display:flex}.ruby-eyebrow>span{background:currentColor;width:24px;height:1px}.ruby-eyebrow--dark{color:var(--ruby-copper)}.ruby-hero h1{color:var(--ruby-ink);margin:24px 0 0;font-size:clamp(2.4rem,4vw,3rem);line-height:1.23}.ruby-hero h1 span{color:#000}.ruby-hero__lead{max-width:520px;color:var(--ruby-muted);margin:24px 0 0;font-size:16px;line-height:2}.ruby-hero__actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px;display:flex}.ruby-text-link{color:var(--ruby-ink);font-size:13px;font-weight:800}.ruby-text-link span{color:var(--ruby-copper);margin-left:5px}.ruby-hero__note{color:var(--ruby-muted);align-items:center;gap:9px;margin-top:31px;font-size:13px;font-weight:650;display:flex}.ruby-note-dot{background:var(--ruby-copper);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d81b6024}.ruby-hero__visual{background:#173940;border-radius:27px;grid-template-columns:1.15fr .85fr;gap:3px;min-height:490px;display:grid;position:relative;overflow:hidden;box-shadow:0 32px 64px #1c393d2b}.ruby-hero--video{clip-path:inset(0 -100vmax);background:#000;flex-direction:column;gap:34px;min-height:0;padding-block:42px 56px;display:flex;box-shadow:0 0 0 100vmax #000}.ruby-hero__video-frame{aspect-ratio:16/9;background:0 0;border-radius:14px;width:100%;max-height:72vh;padding:0;position:relative;overflow:hidden;box-shadow:0 20px 50px #14161b24}.ruby-hero__video-shade{z-index:2;pointer-events:none;background:linear-gradient(#0d10141f,#0d101433);border-radius:14px;position:absolute;inset:0}.ruby-hero__video-brand{z-index:3;color:#fff;letter-spacing:.04em;text-align:center;opacity:.4;text-shadow:0 3px 24px #0006;pointer-events:none;margin:0;font-size:clamp(2rem,7vw,5rem);font-weight:750;line-height:1;animation:3.2s cubic-bezier(.22,.61,.36,1) both ruby-video-brand-in;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.ruby-hero__video-brand-r,.ruby-hero__video-brand-rest{color:#fff;font-weight:750}.ruby-hero__video-grid{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:6px;width:100%;height:100%;display:grid}.ruby-hero__video{object-fit:cover;background:#101013;border-radius:10px;width:100%;height:100%;min-height:0;display:block}@keyframes ruby-video-brand-in{0%{opacity:0;letter-spacing:.18em;transform:translateY(calc(24px - 50%))}to{opacity:.4;letter-spacing:.04em;transform:translateY(-50%)}}.ruby-hero--video .ruby-hero__copy{text-align:center;width:min(100%,1000px);padding-block:0}.ruby-hero--video .ruby-eyebrow{justify-content:center}.ruby-hero--video h1,.ruby-hero--video h1 span{color:#fff}.ruby-hero--video .ruby-hero__lead{color:#ffffffc7}.ruby-hero--video .ruby-text-link{color:#fff}.ruby-hero--video h1{margin-top:16px;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.3}.ruby-hero--video .ruby-hero__lead{max-width:680px;margin:16px auto 0}.ruby-hero--video .ruby-hero__actions{justify-content:center;margin-top:23px}.ruby-hero__photo{width:100%;height:100%;min-height:inherit;object-fit:cover}.ruby-hero__photo--work{object-position:46% center}.ruby-hero__photo--office{object-position:58% center}.ruby-hero__photo-shade{z-index:1;background:linear-gradient(90deg,#0c1f25d1,#0c1f256b 52%,#0c1f250d);position:absolute;inset:0}.ruby-hero__visual-copy{z-index:2;color:#fffaf2;pointer-events:none;max-width:80%;padding:34px;position:absolute;inset:auto auto 0 0}.ruby-hero__visual-kicker,.ruby-hero__visual-services{color:#fffaf2d6;letter-spacing:.12em;margin:0;font-size:10px;font-weight:800;animation:1.1s cubic-bezier(.16,1,.3,1) both ruby-hero-text-enter}.ruby-hero__visual-title{color:#fffaf2;letter-spacing:-.04em;margin:15px 0 0;font-size:28px;font-weight:600;line-height:1.4;animation:1.25s cubic-bezier(.16,1,.3,1) .14s both ruby-hero-text-enter}.ruby-hero__visual-title span{color:#f4a8be}.ruby-hero__visual-services{margin-top:18px;animation-delay:.28s}.ruby-hero__site-preview{z-index:3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#f9f7f166;border:1px solid #ffffffbf;width:250px;max-width:36%;animation:1.45s cubic-bezier(.16,1,.3,1) .22s both ruby-hero-preview-enter;position:absolute;top:58px;right:20px;overflow:hidden;box-shadow:0 14px 36px #06181e47}.ruby-hero__site-preview-bar{background:#e9e6dd73;align-items:center;gap:4px;min-height:22px;padding:0 7px;display:flex}.ruby-hero__site-preview-bar>span{background:#bd7187;border-radius:50%;width:5px;height:5px}.ruby-hero__site-preview-bar small{color:#65777a;letter-spacing:.06em;margin-left:4px;font-size:7px;font-weight:800}.ruby-hero__site-preview-body{min-height:94px;color:var(--ruby-ink);background:linear-gradient(125deg,#ffffff7a,#efede461);padding:12px 11px 10px}.ruby-hero__site-preview-body p{color:var(--ruby-copper);letter-spacing:.12em;margin:0;font-size:7px;font-weight:850}.ruby-hero__site-preview-body strong{margin-top:6px;font-size:14px;line-height:1.45;display:block}.ruby-hero__site-preview-body>span{color:#778588;letter-spacing:.06em;margin-top:7px;font-size:6px;font-weight:750;display:block}.ruby-hero__visual-caption{z-index:2;color:#fffaf2;letter-spacing:.1em;text-shadow:0 1px 8px #0a2026b3;font-size:9px;font-weight:800;position:absolute;top:22px;left:22px}@keyframes ruby-hero-text-enter{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes ruby-hero-preview-enter{0%{opacity:0;transform:translate(24px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.ruby-hero__video-brand{animation:none}.ruby-hero__visual-kicker,.ruby-hero__visual-title,.ruby-hero__visual-services,.ruby-hero__site-preview{opacity:1;animation:none;transform:none}}.ruby-hero__index{color:#172f3557;letter-spacing:.16em;font-size:9px;font-weight:800;position:absolute;bottom:21px;right:0}.ruby-proof-strip{min-height:75px;color:var(--ruby-muted);border-top:1px solid #e1ded5;border-bottom:1px solid #e1ded5;justify-content:center;align-items:center;gap:clamp(12px,4vw,56px);font-size:14px;font-weight:750;display:flex}.ruby-proof-strip b{color:var(--ruby-copper);font-size:14px;font-weight:500}.ruby-section{padding-block:112px}.ruby-challenge{grid-template-columns:.9fr 1.1fr;align-items:center;gap:72px;display:grid}.ruby-section__intro h2,.ruby-section__heading h2,.ruby-bridge__copy h2,.ruby-contact h2{margin:17px 0 0;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.35}.ruby-section__intro>p:last-child,.ruby-section__heading>p{max-width:470px;color:var(--ruby-muted);margin:17px 0 0;font-size:16px;line-height:1.9}.ruby-challenge .ruby-section__intro h2{font-size:clamp(1.5rem,2.7vw,2.25rem);font-weight:400}.ruby-challenge__list{border-top:1px solid #d9d8ce}.ruby-challenge__hint{color:var(--ruby-muted);margin:16px 0;font-size:12px;line-height:1.8}.ruby-challenge__explanation>summary{cursor:pointer;list-style:none}.ruby-challenge__explanation>summary::-webkit-details-marker{display:none}.ruby-challenge__explanation>summary:hover,.ruby-challenge__explanation[open]>summary{background:#eef2ed}.ruby-challenge__explanation>summary:focus-visible{outline-offset:3px;outline:2px solid #467773}.ruby-challenge__toggle:before{content:"+"}.ruby-challenge__explanation[open] .ruby-challenge__toggle:before{content:"-"}.ruby-challenge__body{color:var(--ruby-ink);overflow-wrap:anywhere;background:#eef2ed;border-bottom:1px solid #d9d8ce;padding:24px;font-size:14px;line-height:1.9}.ruby-challenge__body dl,.ruby-challenge__body dd{margin:0}.ruby-challenge__body dl>div+div{margin-top:20px}.ruby-challenge__body dt{margin-bottom:6px;font-weight:600}.ruby-challenge__body>p{margin:24px 0 0}.ruby-challenge__body strong{margin-bottom:6px;display:block}.ruby-challenge__item{border-bottom:1px solid #d9d8ce;grid-template-columns:40px 1fr 24px;align-items:center;gap:16px;min-height:78px;display:grid}.ruby-challenge__item>span:first-child{color:var(--ruby-copper);letter-spacing:.1em;font-size:9px;font-weight:850}.ruby-challenge__item p{color:var(--ruby-muted);margin:0;font-size:15px;font-weight:700;line-height:1.7}.ruby-challenge__item>span:last-child{color:#a7aaa1;font-size:14px}.ruby-services{color:#f7f2e8;background:#173940;width:100%;max-width:none;padding:100px max(32px,50% - 620px) 92px}.ruby-section__heading{justify-content:space-between;align-items:flex-end;gap:30px;max-width:1240px;margin:0 auto;display:flex}.ruby-section__heading h2{color:#f7f2e8}.ruby-services .ruby-section__heading>p{max-width:380px;color:var(--ruby-muted-on-dark)}.ruby-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;max-width:1240px;margin:44px auto 0;display:grid}.ruby-service-card{background:#ffffff0b;border:1px solid #dce7dd2e;border-radius:18px;flex-direction:column;min-height:260px;padding:23px;transition:transform .18s,background .18s,border-color .18s;display:flex}.ruby-service-card:hover{background:#ffffff13;border-color:#d81b6073;transform:translateY(-4px)}.ruby-service-card--booking{background:#31545a;border-color:#f8e1e88c;grid-column:span 2;position:relative}.ruby-service-card--booking .ruby-service-card__copy{padding-right:128px}.ruby-service-card__visual{background:#fff;border-radius:16px;width:104px;height:104px;position:absolute;top:50%;right:24px;overflow:hidden;transform:translateY(-50%)}.ruby-service-card__visual img{object-fit:contain;width:100%;height:100%;display:block}.ruby-service-card--booking:hover{background:#3b6268;border-color:#f1b2c3}.ruby-service-card--booking h3{color:#fffaf5}.ruby-service-card--booking p{color:#e1e9e4}.ruby-service-card__top{color:#d98aa0;letter-spacing:.16em;justify-content:space-between;font-size:10px;font-weight:850;display:flex}.ruby-service-card__top span:last-child{color:#8daca7;font-size:14px}.ruby-service-card h3{color:#faf7ef;letter-spacing:-.04em;margin:28px 0 0;font-size:18px;line-height:1.5}.ruby-service-card p{color:var(--ruby-muted-on-dark);margin:12px 0 24px;font-size:13px;line-height:1.9}.ruby-service-card__detail{color:#e8aebb;border-top:1px solid #dce7dd26;margin-top:auto;padding-top:13px;font-size:9px;font-weight:700}.ruby-disclaimer{max-width:1240px;color:var(--ruby-muted-on-dark);margin:18px auto 0;font-size:9px;line-height:1.7}.ruby-bridge{grid-template-columns:1fr 1fr;align-items:center;gap:68px;padding-block:108px;display:grid}.ruby-brand-story{color:#203536;text-align:center;background:#eff2ee;min-width:0;padding:56px 24px}.ruby-brand-story__eyebrow{color:#8e7350;letter-spacing:.16em;font-size:10px}.ruby-brand-story h3{letter-spacing:-.04em;margin:24px 0;font-size:clamp(22px,2.3vw,32px);font-weight:400;line-height:1.65}.ruby-brand-story__lead{color:#596867;font-size:13px;line-height:2}.ruby-brand-story__roles{justify-content:center;align-items:center;gap:10px;margin-top:40px;display:flex}.ruby-brand-story__role{justify-items:center;gap:12px;font-size:11px;display:grid}.ruby-brand-story__roles svg{fill:none;stroke:#467773;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:32px;height:32px}.ruby-brand-story__brand{flex:0 210px;justify-content:center;font-size:14px;font-weight:500;display:flex}.ruby-brand-story__brand img{width:min(100%,210px);height:auto;display:block}.ruby-brand-story__roles>a{color:inherit;text-underline-offset:5px;text-decoration:none}.ruby-brand-story__roles>a:hover{text-decoration:underline}.ruby-brand-story__roles>a:focus-visible{outline-offset:6px;outline:2px solid #467773}.ruby-brand-story__line{background:#a7b9b1;flex:16px;max-width:40px;height:1px}@media (max-width:720px){.ruby-brand-story{padding:40px 20px}.ruby-brand-story__roles{flex-direction:column;gap:18px}.ruby-brand-story__brand{flex:none}.ruby-brand-story__line{flex:none;width:1px;height:24px}}.ruby-bridge__visual{background:radial-gradient(circle,#e6dcc399,#0000 38%),#eae8df;border-radius:24px;place-items:center;min-height:330px;display:grid;position:relative;overflow:hidden}.ruby-bridge__orbit{border:1px solid #19434a29;border-radius:50%;width:220px;height:220px;position:absolute}.ruby-bridge__orbit--two{border-color:#19434a1a;width:310px;height:310px}.ruby-bridge__node{z-index:1;text-align:center;background:#f9f8f0ed;border:1px solid #ffffffb3;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:absolute;box-shadow:0 10px 25px #172f3517}.ruby-bridge__node span{color:#bd7187;letter-spacing:.13em;font-size:7px;font-weight:850}.ruby-bridge__node strong{color:#24464b;margin-top:7px;font-size:11px;line-height:1.45}.ruby-bridge__node--center{background:var(--ruby-teal);width:132px;height:132px}.ruby-bridge__node--center span{color:#e8aebb}.ruby-bridge__node--center strong{color:#fffaf0;font-size:15px}.ruby-bridge__node--owners{z-index:2;top:33px;left:calc(50% - 56px)}.ruby-bridge__node--partners{z-index:2;bottom:33px;left:calc(50% - 56px)}.ruby-bridge__spark{color:var(--ruby-copper);font-size:19px;position:absolute}.ruby-bridge__spark--one{top:93px;left:23%}.ruby-bridge__spark--two{font-size:14px;bottom:89px;right:23%}.ruby-shell .ruby-bridge__copy h2{color:var(--ruby-ink);font-size:clamp(1.5rem,2.7vw,2.25rem);font-weight:400}.ruby-bridge__copy h2 span{color:#000}.ruby-bridge__copy .ruby-animated-heading>span:first-child,.ruby-bridge__copy .ruby-animated-heading>span:first-child span,.ruby-hero--editorial .ruby-animated-heading>span:first-child,.ruby-hero--editorial .ruby-animated-heading>span:first-child span{color:var(--ruby-ink)}.ruby-animated-heading__character{display:inline-block}.ruby-animated-heading[data-reveal=pending] .ruby-animated-heading__character{opacity:0}.ruby-animated-heading[data-reveal=visible] .ruby-animated-heading__character{animation:.45s ease-out both ruby-brand-character-enter}@keyframes ruby-brand-character-enter{0%{opacity:0;transform:translateY(.2em)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ruby-animated-heading[data-reveal] .ruby-animated-heading__character{opacity:1;animation:none}}.ruby-bridge__copy>p:not(.ruby-eyebrow){color:var(--ruby-muted);margin:19px 0 0;font-size:14px;line-height:2}.ruby-bridge__links{border-top:1px solid #d9d8ce;gap:0;margin-top:21px;display:grid}.ruby-bridge__links a{color:#3b595c;border-bottom:1px solid #d9d8ce;justify-content:space-between;align-items:center;gap:12px;min-height:45px;font-size:12px;font-weight:800;display:flex}.ruby-bridge__links a span{color:var(--ruby-copper)}.ruby-process{padding-top:30px}.ruby-process .ruby-section__heading>div h2{color:var(--ruby-ink)}.ruby-process__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:43px;display:grid}.ruby-process__step{border-top:2px solid var(--ruby-copper);background:#eeece4;min-height:220px;padding:22px;position:relative}.ruby-process__step>span{color:var(--ruby-copper);letter-spacing:.15em;font-size:8px;font-weight:850}.ruby-process__number{color:#19434a1f;letter-spacing:-.08em;font-size:40px;font-weight:850;position:absolute;top:14px;right:20px}.ruby-process__step h3{letter-spacing:-.04em;margin:40px 0 0;font-size:20px}.ruby-process__step p{max-width:280px;color:var(--ruby-muted);margin:10px 0 0;font-size:13px;line-height:1.8}.ruby-contact{background:var(--ruby-copper);color:#fffaf2;justify-content:space-between;align-items:center;gap:30px;width:100%;max-width:none;padding:64px max(32px,50% - 620px);display:flex}.ruby-contact h2{font-size:clamp(1.8rem,3.3vw,2.7rem)}.ruby-contact__copy>p:last-child{color:#fffaf2db;max-width:630px;margin:13px 0 0;font-size:13px;line-height:1.9}.ruby-button--light{color:#28464a;background:#f7f1e6;border-color:#f7f1e6;flex:none}.ruby-button--light:hover{background:#fff}.ruby-footer{justify-content:space-between;align-items:center;gap:22px;min-height:112px;display:flex}.ruby-footer__menu{position:relative}.ruby-footer__menu-button{color:#496267;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:8px 0;font-size:12px;font-weight:750;display:flex}.ruby-footer__menu-icon{gap:4px;width:18px;display:grid}.ruby-footer__menu-icon span{background:currentColor;border-radius:999px;height:2px;transition:transform .16s;display:block}.ruby-footer__menu-button[aria-expanded=true] .ruby-footer__menu-icon span:first-child{transform:translateY(6px)rotate(45deg)}.ruby-footer__menu-button[aria-expanded=true] .ruby-footer__menu-icon span:nth-child(2){opacity:0}.ruby-footer__menu-button[aria-expanded=true] .ruby-footer__menu-icon span:last-child{transform:translateY(-6px)rotate(-45deg)}.ruby-footer__menu-button:focus-visible,.ruby-footer__links a:focus-visible{outline:2px solid var(--ruby-teal);outline-offset:3px}.ruby-footer__links{display:none}.ruby-footer__links.is-open{z-index:10;background:#fff;border:1px solid #e1e6df;border-radius:14px;width:240px;max-height:calc(100dvh - 100px);padding:10px 20px;display:grid;position:absolute;bottom:calc(100% + 10px);left:0;overflow-y:auto;box-shadow:0 12px 36px #172f351f}.ruby-footer__links a{border-bottom:1px solid #edf0eb;justify-content:space-between;align-items:center;min-height:46px;display:flex}.ruby-footer__links a:last-child{border-bottom:0}.ruby-footer>p{color:var(--ruby-muted);margin:0;font-size:11px}.ruby-footer__linkedin-label{align-items:center;gap:6px;display:inline-flex}.ruby-footer__linkedin-icon{color:#fff;background:#0a66c2;border-radius:2px;place-items:center;width:15px;height:15px;font-family:Arial,sans-serif;font-size:11px;font-weight:700;line-height:1;display:inline-grid}.ruby-footer__links .ruby-footer__linkedin-icon{color:#fff}.ruby-footer__links a,.ruby-footer>a:not(.ruby-brand){color:#496267;font-size:12px;font-weight:750}.ruby-footer__links a span,.ruby-footer>a:not(.ruby-brand) span{color:var(--ruby-copper)}.ruby-footer>small{color:var(--ruby-muted);font-size:10px}.ruby-service-card{color:inherit;text-decoration:none}.ruby-service-card__detail{justify-content:space-between;align-items:center;gap:12px;display:flex}.ruby-service-card__detail span{color:#f8e1e8;letter-spacing:.08em;white-space:nowrap;font-size:8px}.ruby-detail-page .ruby-header{border-bottom:1px solid #e1ded5}.ruby-detail-hero{width:min(100% - 64px,1240px);margin-inline:auto;padding:42px 0 88px}.ruby-detail-back{color:#496267;margin-bottom:54px;font-size:11px;font-weight:750;display:inline-block}.ruby-detail-number{color:#172f355c;letter-spacing:.16em;margin:25px 0 0;font-size:10px;font-weight:850}.ruby-detail-hero h1{color:var(--ruby-ink);white-space:pre-line;margin:12px 0 0;font-size:clamp(2.5rem,5vw,4.25rem);line-height:1.24}.ruby-detail-lead{max-width:690px;color:var(--ruby-muted);margin:22px 0 0;font-size:15px;line-height:2}.ruby-detail-section{width:min(100% - 64px,1240px);margin-inline:auto;padding-block:72px}.ruby-support-intro,.ruby-support-options,.ruby-support-device,.ruby-support-notice{border-top:1px solid #e1ded5}.ruby-support-lead,.ruby-support-notice>p:not(.ruby-eyebrow),.ruby-support-options>div>p:not(.ruby-eyebrow){max-width:720px;color:var(--ruby-muted);margin:18px 0 0;font-size:15px;line-height:2}.ruby-support-grid,.ruby-support-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:38px;display:grid}.ruby-support-card,.ruby-support-choice{background:#f9f7f1;border:1px solid #dedbd1;border-radius:18px;padding:25px}.ruby-support-card>span,.ruby-support-choice>span{color:var(--ruby-copper);letter-spacing:.16em;font-size:10px;font-weight:850}.ruby-support-card h3,.ruby-support-choice h3{color:var(--ruby-ink);margin:25px 0 0;font-size:18px}.ruby-support-card p,.ruby-support-choice p{color:var(--ruby-muted);margin:12px 0 0;font-size:13px;line-height:1.9}.ruby-support-options{grid-template-columns:.8fr 1.2fr;align-items:start;gap:50px;display:grid}.ruby-support-options__image{border-radius:8px;width:100%;height:auto;margin-top:24px;display:block}.ruby-device-hero__banner{width:100%;height:auto;margin-top:32px;display:block}.ruby-support-card__image{border-radius:8px;width:100%;height:auto;margin-top:20px;display:block}.ruby-support-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.ruby-support-choice{transition:transform .18s,box-shadow .18s}.ruby-support-choice__image{width:100%;max-width:300px;height:auto;margin:20px auto 0;display:block}.ruby-support-choice:hover{transform:translateY(-4px);box-shadow:0 18px 34px #172f351a}.ruby-support-choice--dark{background:var(--ruby-teal);border-color:var(--ruby-teal)}.ruby-support-choice--dark h3,.ruby-support-choice--dark p{color:#fffaf2}.ruby-support-choice--dark p{color:var(--ruby-muted-on-dark)}.ruby-support-choice strong{color:var(--ruby-copper);margin-top:26px;font-size:11px;display:block}.ruby-support-choice--dark strong{color:#f2b2c3}.ruby-support-list{border-top:1px solid #d9d8ce;margin:28px 0 0;padding:0;list-style:none}.ruby-support-list li{color:#354c50;border-bottom:1px solid #d9d8ce;padding:15px 0 15px 25px;font-size:13px;font-weight:700;position:relative}.ruby-support-list li:before{content:"✓";color:var(--ruby-copper);position:absolute;left:0}.ruby-support-device{grid-template-columns:1fr 1fr;align-items:center;gap:72px;display:grid}.ruby-support-device__photo{border-radius:25px;width:100%;height:auto;display:block}.ruby-device-visual{background:linear-gradient(145deg,#e8e4da,#f9f7f1);border-radius:25px;place-items:center;min-height:330px;padding:30px;display:grid}.ruby-device-screen{aspect-ratio:16/10;width:min(100%,390px);color:var(--ruby-ink);background:linear-gradient(135deg,#dcece3,#f7e6d9);border:10px solid #24383b;border-radius:13px;flex-direction:column;justify-content:center;padding:32px;display:flex;box-shadow:0 18px #b8b4aa,0 30px 34px #172f352e}.ruby-device-screen span{color:var(--ruby-copper);letter-spacing:.16em;font-size:9px;font-weight:850}.ruby-device-screen strong{margin-top:12px;font-size:28px;line-height:1.25}.ruby-device-base{background:#c7c4bc;border-radius:0 0 12px 12px;width:72%;height:14px;margin-top:24px}.ruby-support-notice{background:#f9f7f1}.ruby-support-notice .ruby-inline-link{margin-top:24px;display:inline-block}.ruby-lenovo-product{border-top:1px solid #e1ded5;grid-template-columns:.9fr 1.1fr;align-items:center;gap:64px;display:grid}.ruby-lenovo-product__image{background:#fff;border:1px solid #dedbd1;border-radius:24px;place-items:center;min-height:340px;display:grid;overflow:hidden}.ruby-lenovo-product__image img{object-fit:contain;width:100%;height:100%;max-height:360px}.ruby-lenovo-product__gallery{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px;display:grid}.ruby-lenovo-product__gallery img{object-fit:contain;background:#fff;border:1px solid #dedbd1;border-radius:10px;width:100%;height:92px}.ruby-product-price{color:var(--ruby-ink);flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin:20px 0 0;display:flex}.ruby-purchase{border:1px solid #dedbd1;border-radius:12px;gap:14px;margin:24px 0;padding:20px;font-size:13px;line-height:1.8;display:grid}.ruby-product-navigation{flex-wrap:wrap;gap:12px 24px;margin-top:24px;display:flex}.ruby-product-navigation a{text-underline-offset:4px;text-decoration:underline}.ruby-lenovo-product[id]{align-items:start;scroll-margin-top:24px}.ruby-purchase p{margin:0}.ruby-purchase button:disabled{opacity:.6;cursor:not-allowed}.ruby-purchase [role=alert]{color:#a53020}.ruby-payment-brands{gap:6px;display:grid}.ruby-payment-brands>span{color:#635f56;font-size:11px}.ruby-payment-brands ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ruby-payment-brands li{display:flex}.ruby-payment-brands img{object-fit:contain;border:1px solid #dedbd1;border-radius:3px;width:39px;height:25px;display:block}.ruby-product-specs{margin-top:28px}.ruby-product-specs summary{cursor:pointer;margin-bottom:16px;font-weight:500}.ruby-product-specs .ruby-lenovo-specs__list>div{grid-template-columns:minmax(90px,1fr) minmax(0,2fr);gap:12px}.ruby-product-price span{font-size:13px}.ruby-product-price strong{font-size:clamp(24px,3vw,36px);font-weight:500}.ruby-product-note{color:#819092;margin-top:16px;font-size:11px;line-height:1.7}.ruby-lenovo-specs{border-top:1px solid #e1ded5;grid-template-columns:.75fr 1.25fr;gap:60px;display:grid}.ruby-lenovo-specs__heading>p:not(.ruby-eyebrow){color:var(--ruby-muted);margin-top:16px;font-size:14px;line-height:1.9}.ruby-lenovo-specs__list{border-top:1px solid #d9d8ce;margin:0}.ruby-lenovo-specs__list>div{border-bottom:1px solid #d9d8ce;grid-template-columns:145px 1fr;gap:20px;padding:15px 0;display:grid}.ruby-lenovo-specs__list dt{color:#496267;font-size:12px;font-weight:800}.ruby-lenovo-specs__list dd{color:var(--ruby-ink);margin:0;font-size:12px;line-height:1.7}.ruby-thinkpad-features,.ruby-thinkpad-connectivity,.ruby-monitor-connectivity,.ruby-monitor-usage{border-top:1px solid #e1ded5}.ruby-thinkpad-connectivity,.ruby-monitor-connectivity,.ruby-monitor-usage{grid-template-columns:1.1fr .9fr;align-items:center;gap:64px;display:grid}.ruby-thinkpad-connectivity figure,.ruby-monitor-connectivity figure,.ruby-monitor-usage figure{background:#fff;border:1px solid #dedbd1;border-radius:18px;margin:0;overflow:hidden}.ruby-thinkpad-connectivity figure img,.ruby-monitor-connectivity figure img,.ruby-monitor-usage figure img{width:100%;height:auto;display:block}.ruby-thinkpad-connectivity figcaption,.ruby-monitor-connectivity figcaption{color:#627579;padding:12px 16px;font-size:11px}.ruby-thinkpad-connectivity ol,.ruby-monitor-connectivity ol{border-top:1px solid #d9d8ce;margin:28px 0 0;padding:0;list-style:none}.ruby-thinkpad-connectivity li,.ruby-monitor-connectivity li{color:#354c50;border-bottom:1px solid #d9d8ce;padding:11px 0;font-size:13px;line-height:1.6}.ruby-monitor-usage{grid-template-columns:1fr .8fr}.ruby-monitor-usage>div>p:not(.ruby-eyebrow){color:var(--ruby-muted);margin:16px 0 0;font-size:15px;line-height:2}@media (max-width:820px){.ruby-support-grid,.ruby-support-options,.ruby-support-device,.ruby-lenovo-product,.ruby-lenovo-specs,.ruby-thinkpad-connectivity,.ruby-monitor-connectivity,.ruby-monitor-usage{grid-template-columns:1fr}.ruby-support-choice-grid{margin-top:28px}}@media (max-width:600px){.ruby-support-grid,.ruby-support-choice-grid{grid-template-columns:1fr}.ruby-device-screen strong{font-size:23px}}.ruby-detail-section h2,.ruby-detail-cta h2{margin:14px 0 0;font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1.4}.ruby-detail-overview{border-top:1px solid #e1ded5;grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px;display:grid}.ruby-detail-overview>p,.ruby-company-message>p:last-child{color:var(--ruby-muted);margin:0;font-size:15px;line-height:2.1}.ruby-detail-points{padding-top:42px}.ruby-detail-points ul{border-top:1px solid #d9d8ce;margin:27px 0 0;padding:0;list-style:none}.ruby-detail-points li{color:#354c50;border-bottom:1px solid #d9d8ce;grid-template-columns:44px 1fr 20px;align-items:center;gap:16px;min-height:68px;font-size:13px;font-weight:700;display:grid}.ruby-detail-points li span:first-child{color:var(--ruby-copper);font-size:9px;font-weight:850}.ruby-detail-points li span:last-child{color:#a7aaa1}.ruby-cad-examples{border-top:1px solid #e1ded5}.ruby-cad-examples__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:36px;display:grid}.ruby-cad-examples figure{background:#eeece4;margin:0}.ruby-cad-examples figure img{width:100%;height:auto;display:block}.ruby-cad-examples figcaption{gap:7px;padding:20px;display:grid}.ruby-cad-examples figcaption strong{color:var(--ruby-ink);font-size:15px}.ruby-cad-examples figcaption span{color:var(--ruby-muted);font-size:12px;line-height:1.8}.ruby-price-guide{border-top:1px solid #e1ded5}.ruby-price-guide__intro{max-width:680px;color:var(--ruby-muted);margin:14px 0 0;font-size:14px;line-height:1.9}.ruby-price-chart{background:#f9f7f1;border:1px solid #e1ded5;margin:28px 0 0;padding:24px}.ruby-price-chart__caption,.ruby-price-chart__scale,.ruby-price-chart__row{grid-template-columns:minmax(160px,.9fr) minmax(0,2fr) minmax(150px,.8fr);align-items:center;gap:16px;display:grid}.ruby-price-chart__caption{color:var(--ruby-muted);justify-content:space-between;gap:16px;font-size:12px;display:flex}.ruby-price-chart__caption strong{color:var(--ruby-ink);font-size:17px}.ruby-price-chart__scale{color:#819092;margin-top:22px;font-size:11px}.ruby-price-chart__scale>div{justify-content:space-between;display:flex}.ruby-price-chart__rows{margin-top:7px}.ruby-price-chart__row{border-top:1px solid #e1ded5;min-height:58px}.ruby-price-chart__method,.ruby-price-chart__value{color:var(--ruby-ink);font-size:13px}.ruby-price-chart__method{font-weight:700}.ruby-price-chart__value{text-align:right}.ruby-price-chart__track{background:#e9e6dd;border-radius:999px;height:10px;position:relative;overflow:hidden}.ruby-price-chart__range{inset:0 auto 0 var(--range-start);width:var(--range-width);border-radius:inherit;background:linear-gradient(90deg, #e89ab0, var(--ruby-copper));min-width:6px;position:absolute}.ruby-price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px;display:grid}.ruby-price-card{border-top:2px solid var(--ruby-copper);background:#eeece4;min-height:250px;padding:22px}.ruby-price-card__number{color:var(--ruby-copper);letter-spacing:.15em;font-size:9px;font-weight:850}.ruby-price-card h3{min-height:48px;color:var(--ruby-ink);margin:16px 0 0;font-size:18px;font-weight:800;line-height:1.6}.ruby-price-card dl{gap:9px;margin:17px 0 0;display:grid}.ruby-price-card dl>div{border-bottom:1px solid #d9d8ce;justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.ruby-price-card dt{color:var(--ruby-muted);font-size:11px;font-weight:700}.ruby-price-card dd{color:var(--ruby-ink);text-align:right;margin:0;font-size:13px;font-weight:800}.ruby-price-card>p{color:var(--ruby-muted);margin:12px 0 0;font-size:13px;line-height:1.8}.ruby-price-guide__note{color:#778588;margin:15px 0 0;font-size:10px;line-height:1.8}@media (max-width:680px){.ruby-price-chart{padding:19px 15px}.ruby-price-chart__scale{margin-top:16px;display:block}.ruby-price-chart__scale>span{display:none}.ruby-price-chart__row{grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;padding-block:13px}.ruby-price-chart__track{grid-area:2/1/auto/-1}.ruby-price-chart__value{font-size:12px}}.ruby-detail-flow{background:#eeece4;width:100%;max-width:none;padding-inline:max(32px,50% - 620px)}.ruby-detail-flow .ruby-process__steps{max-width:1240px;margin-inline:auto}.ruby-detail-cta{background:var(--ruby-teal);color:#fffaf2;text-align:center;padding:76px 24px}.ruby-detail-cta .ruby-eyebrow{color:#f8e1e8;justify-content:center}.ruby-detail-cta h2{color:#fffaf2}.ruby-detail-cta>p:not(.ruby-eyebrow){color:#bdc9c4;max-width:620px;margin:15px auto 0;font-size:12px;line-height:1.9}.ruby-detail-cta .ruby-button{margin-top:24px}.ruby-company-message{border-top:1px solid #e1ded5}.ruby-company-message h2{margin-bottom:20px}.ruby-company-message>p:last-child{max-width:780px}.ruby-representative{border-top:1px solid #e1ded5;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(32px,6vw,82px);display:grid}.ruby-representative__photo{background:#eeece4;border-radius:20px;margin:0;overflow:hidden}.ruby-representative__photo img{border-radius:20px;width:100%;height:auto;display:block}.ruby-representative__photo figcaption{color:var(--ruby-muted);padding:12px 16px;font-size:13px;line-height:1.8}.ruby-representative__role{color:var(--ruby-copper);margin:22px 0 0;font-size:13px;font-weight:800}.ruby-representative__copy h2{color:var(--ruby-ink);margin:15px 0 0;font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.45}.ruby-representative__copy>p:last-child{max-width:480px;color:var(--ruby-muted);margin:17px 0 0;font-size:15px;line-height:2}.ruby-company-outline{padding-top:30px}.ruby-company-outline dl{border-top:1px solid #d9d8ce;margin:26px 0 0}.ruby-company-outline dl>div{border-bottom:1px solid #d9d8ce;grid-template-columns:minmax(140px,.32fr) 1fr;gap:24px;padding:21px 0;display:grid}.ruby-company-outline dt{color:#5c6d70;font-size:12px;font-weight:750}.ruby-company-outline dd{color:var(--ruby-ink);margin:0;font-size:12px;line-height:1.9}@media (max-width:680px){.ruby-representative{grid-template-columns:1fr;gap:24px}.ruby-representative__copy h2{font-size:1.9rem}.ruby-representative__photo figcaption{padding:11px 13px;font-size:12px}}.ruby-contact-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.ruby-contact-options article{border-top:2px solid var(--ruby-copper);background:#eeece4;padding:30px}.ruby-contact-options h2{font-size:clamp(1.4rem,2.4vw,2rem)}.ruby-contact-options article>p:not(.ruby-eyebrow){min-height:54px;color:var(--ruby-muted);margin:13px 0 0;font-size:12px;line-height:1.9}.ruby-inline-link{color:var(--ruby-ink);align-items:center;gap:12px;margin-top:20px;font-size:11px;font-weight:800;display:inline-flex}.ruby-inline-link span{color:var(--ruby-copper)}.ruby-inquiry{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(32px,6vw,84px);display:grid}.ruby-inquiry__intro h2{letter-spacing:-.055em;margin:18px 0 0;font-size:clamp(1.7rem,3vw,2.6rem)}.ruby-inquiry__intro>p:not(.ruby-eyebrow){color:var(--ruby-muted);margin:18px 0 0;font-size:14px;line-height:1.9}.ruby-inquiry__intro .ruby-inquiry__required{margin-top:12px;font-size:12px}.ruby-inquiry__form{background:#eeece4;padding:clamp(24px,4vw,42px)}.ruby-inquiry__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.ruby-inquiry__grid label,.ruby-inquiry__consent{color:var(--ruby-ink);gap:8px;font-size:12px;font-weight:750;display:grid}.ruby-inquiry__grid input,.ruby-inquiry__grid select,.ruby-inquiry__grid textarea{width:100%;color:var(--ruby-ink);font:inherit;background:#fffdf7;border:1px solid #d1cec4;border-radius:0;padding:12px 13px;font-size:14px;font-weight:400;line-height:1.5}.ruby-inquiry__grid textarea{resize:vertical}.ruby-inquiry__grid input:focus,.ruby-inquiry__grid select:focus,.ruby-inquiry__grid textarea:focus{outline:2px solid var(--ruby-copper);outline-offset:2px}.ruby-inquiry__full{grid-column:1/-1}.ruby-inquiry__honeypot{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ruby-inquiry__consent{grid-template-columns:auto 1fr;align-items:start;margin-top:24px;font-weight:500;line-height:1.6}.ruby-inquiry__consent input{width:16px;height:16px;accent-color:var(--ruby-copper);margin:2px 0 0}.ruby-inquiry__consent a{color:inherit;text-underline-offset:3px;text-decoration:underline}.ruby-inquiry__status{margin:18px 0 0;padding:12px 14px;font-size:13px;line-height:1.7}.ruby-inquiry__status--success{color:#1f5238;background:#dceae1}.ruby-inquiry__status--error{color:#84271e;background:#f5dcda}.ruby-inquiry__submit{margin-top:24px}@media (max-width:980px){.ruby-nav{gap:13px;font-size:10px}.ruby-header,.ruby-hero,.ruby-section,.ruby-bridge,.ruby-footer,.ruby-proof-strip{width:min(100% - 40px,1240px)}.ruby-hero{gap:26px}.ruby-hero h1{font-size:44px}.ruby-hero__visual{min-height:400px}.ruby-challenge,.ruby-bridge{gap:40px}.ruby-services,.ruby-contact{padding-inline:20px}.ruby-inquiry{grid-template-columns:1fr}.ruby-inquiry__intro{max-width:600px}.ruby-cad-examples__grid{gap:18px}}@media (max-width:680px){.ruby-inquiry__grid{grid-template-columns:1fr}.ruby-inquiry__full{grid-column:auto}.ruby-cad-examples__grid{grid-template-columns:1fr}.ruby-detail-flow{padding-inline:32px}}@media (max-width:720px){.ruby-header,.ruby-hero,.ruby-section,.ruby-bridge,.ruby-footer,.ruby-proof-strip,.ruby-detail-hero,.ruby-detail-section{width:min(100% - 36px,560px)}.ruby-header{flex-wrap:nowrap;gap:10px;min-height:64px;padding-block:4px}.ruby-header__brands{min-width:0}.ruby-header__actions{margin-left:auto}.ruby-brand__logo{width:140px}.ruby-header__brands img{width:140px;height:54px}.ruby-brand__mark{width:37px;height:37px}.ruby-brand__copy strong{font-size:13px}.ruby-brand__copy small{font-size:7px}.ruby-nav{display:none}.ruby-detail-page .ruby-header{width:min(100% - 36px,560px)}.ruby-detail-hero{padding:30px 0 58px}.ruby-detail-back{margin-bottom:38px}.ruby-detail-hero h1{font-size:clamp(2.25rem,9vw,3rem)}.ruby-detail-lead{font-size:12px}.ruby-detail-section{padding-block:52px}.ruby-detail-overview,.ruby-contact-options{grid-template-columns:1fr;gap:22px}.ruby-detail-overview>p,.ruby-company-message>p:last-child{font-size:12px}.ruby-detail-flow{width:100%;padding:52px 18px}.ruby-detail-points li{grid-template-columns:30px 1fr 16px;gap:10px;min-height:62px;font-size:11px}.ruby-price-grid{grid-template-columns:1fr;gap:10px;margin-top:22px}.ruby-price-card{min-height:0;padding:19px}.ruby-price-card h3{min-height:0;margin-top:12px}.ruby-company-outline dl>div{grid-template-columns:1fr;gap:7px;padding:16px 0}.ruby-contact-options article{padding:22px}.ruby-detail-cta{padding:58px 18px}.ruby-button--nav{gap:7px;min-height:38px;padding-inline:11px;font-size:10px}.ruby-hero{grid-template-columns:1fr;gap:30px;padding-block:50px 44px}.ruby-hero h1{margin-top:19px;font-size:32px}.ruby-hero__lead{margin-top:17px;font-size:14px}.ruby-hero__actions{gap:16px;margin-top:23px}.ruby-button{gap:11px;min-height:46px;padding-inline:16px;font-size:11px}.ruby-hero__note{margin-top:22px;font-size:12px}.ruby-hero__visual{border-radius:20px;grid-template-columns:1fr 1fr;min-height:350px}.ruby-hero__visual-copy{max-width:92%;padding:24px 20px}.ruby-hero__visual-title{font-size:23px}.ruby-hero__visual-services{margin-top:14px;font-size:8px}.ruby-hero__visual-caption{max-width:44%;font-size:7px;top:16px;left:15px}.ruby-hero__site-preview{width:220px;max-width:42%;top:48px;right:12px}.ruby-hero__site-preview-body{min-height:88px;padding:10px 8px 8px}.ruby-hero__site-preview-body strong{font-size:12px}.ruby-hero__index{display:none}.ruby-proof-strip{gap:8px;min-height:69px;font-size:12px}.ruby-proof-strip b{font-size:11px}.ruby-section{padding-block:72px}.ruby-challenge,.ruby-bridge{grid-template-columns:1fr;gap:30px}.ruby-section__intro h2,.ruby-section__heading h2{font-size:clamp(1.75rem,7vw,2.3rem)}.ruby-section__intro>p:last-child,.ruby-section__heading>p{font-size:14px}.ruby-challenge__item{grid-template-columns:28px 1fr 18px;gap:10px;min-height:71px}.ruby-challenge__item p{font-size:13px}.ruby-services{width:100%;padding:70px 18px}.ruby-section__heading{display:block}.ruby-section__heading>p{margin-top:13px}.ruby-service-grid{grid-template-columns:1fr;gap:10px;margin-top:27px}.ruby-service-card{min-height:0;padding:19px}.ruby-service-card--booking{grid-column:auto}.ruby-service-card--booking .ruby-service-card__copy{padding-right:0}.ruby-service-card__visual{align-self:flex-end;width:60px;height:60px;margin-top:10px;position:static;transform:none}.ruby-service-card h3{margin-top:20px;font-size:16px}.ruby-service-card p{margin-bottom:18px}.ruby-disclaimer{font-size:8px}.ruby-bridge{padding-block:72px 50px}.ruby-bridge__visual{min-height:300px}.ruby-bridge__orbit{width:196px;height:196px}.ruby-bridge__orbit--two{width:270px;height:270px}.ruby-bridge__node--owners{top:27px}.ruby-bridge__node--partners{bottom:27px}.ruby-bridge__copy>p:not(.ruby-eyebrow){font-size:13px}.ruby-process{padding-top:48px}.ruby-process__steps{grid-template-columns:1fr;gap:10px;margin-top:27px}.ruby-process__step{min-height:176px;padding:19px}.ruby-process__step h3{margin-top:30px}.ruby-contact{width:100%;padding:48px 18px;display:block}.ruby-contact h2{font-size:clamp(1.65rem,7vw,2.25rem)}.ruby-contact h2 br{display:none}.ruby-contact__copy>p:last-child{font-size:12px}.ruby-button--light{margin-top:22px}.ruby-footer{grid-template-columns:minmax(0,1fr);gap:14px;min-height:0;padding-block:24px;display:grid}.ruby-footer>p{grid-column:1/-1;font-size:10px}.ruby-footer__menu{grid-column:1/-1;gap:0;display:grid}.ruby-footer__menu-button{color:#496267;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #d9d8ce;align-items:center;gap:11px;padding:0;font-size:12px;font-weight:750;display:flex}.ruby-footer__menu-icon{gap:4px;width:18px;display:grid}.ruby-footer__menu-icon span{background:currentColor;border-radius:999px;height:2px;transition:transform .16s;display:block}.ruby-footer__menu-button[aria-expanded=true] .ruby-footer__menu-icon span:first-child{transform:translateY(6px)rotate(45deg)}.ruby-footer__menu-button[aria-expanded=true] .ruby-footer__menu-icon span:nth-child(2){opacity:0}.ruby-footer__menu-button[aria-expanded=true] .ruby-footer__menu-icon span:last-child{transform:translateY(-6px)rotate(-45deg)}.ruby-footer__links{display:none}.ruby-footer__links.is-open{width:auto;box-shadow:none;background:0 0;border:0;border-top:1px solid #d9d8ce;border-radius:0;gap:0;padding:0;display:grid;position:static}.ruby-footer__links a{border-bottom:1px solid #d9d8ce;justify-content:space-between;align-items:center;min-height:42px;font-size:10px;display:flex}.ruby-footer>.ruby-footer__booking{justify-self:start}.ruby-footer>small{grid-column:1/-1;font-size:9px}}@media (prefers-reduced-motion:reduce){.ruby-shell *,.ruby-shell :before,.ruby-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.ruby-shell h1,.ruby-shell h2{letter-spacing:-.045em;font-weight:600}.ruby-shell{--ruby-paper:#f7f7f3;--ruby-copper:#a85f4d}.ruby-hero--editorial{min-height:590px;box-shadow:none;clip-path:none;background:0 0;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(36px,6vw,86px);padding-block:76px 82px;overflow:visible}.ruby-hero--editorial .ruby-hero__copy{text-align:left;max-width:620px;padding-block:0}.ruby-hero--editorial .ruby-eyebrow{color:var(--ruby-copper);letter-spacing:.1em;text-transform:none;justify-content:flex-start;font-size:11px}.ruby-hero--editorial h1,.ruby-hero--editorial h1 span{color:var(--ruby-ink)}.ruby-hero--editorial h1{letter-spacing:-.065em;margin-top:25px;font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:600;line-height:1.3}.ruby-hero--editorial h1 span{color:#315b5b}.ruby-hero--editorial .ruby-hero__lead{max-width:570px;color:var(--ruby-muted);margin:22px 0 0;font-size:15px;line-height:2}.ruby-hero--editorial .ruby-hero__actions{justify-content:flex-start;margin-top:28px}.ruby-hero--editorial .ruby-text-link{color:var(--ruby-ink)}.ruby-hero--editorial .ruby-hero__note{margin-top:23px;font-size:11px}.ruby-hero__image{aspect-ratio:1;background:#dfe5df;border:1px solid #c4a05c;border-radius:20px;min-height:470px;position:relative;overflow:hidden;box-shadow:0 0 0 7px #f0e6cf,0 0 0 8px #bfa26699}.ruby-hero__image:before{z-index:2;content:"";pointer-events:none;border:1px solid #efdcacaa;border-radius:10px;position:absolute;inset:13px}.ruby-hero__image:after{content:"";pointer-events:none;background:linear-gradient(#0000,#102022c2);position:absolute;inset:35% 0 0}.ruby-hero__image-photo{object-fit:cover;object-position:center}.ruby-hero__image-label{z-index:1;color:#715629;letter-spacing:.1em;background:linear-gradient(115deg,#fffdf6,#ecdfbf);border:1px solid #d0b16b;border-radius:999px;padding:10px 13px;font-size:8px;font-weight:850;position:absolute;top:18px;left:18px}.ruby-hero__image-caption{z-index:1;color:#fff;gap:10px;display:grid;position:absolute;bottom:25px;left:25px;right:25px}.ruby-hero__image-caption span{color:#efdbad;letter-spacing:.15em;font-size:9px;font-weight:850}.ruby-hero__image-caption strong{letter-spacing:-.04em;text-shadow:0 2px 18px #0008;font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.5}.ruby-interview{border-top:1px solid #e5e8e1;border-bottom:1px solid #e5e8e1;grid-template-columns:minmax(170px,216px) 1fr;justify-content:center;align-items:center;gap:clamp(32px,6vw,76px);padding-block:76px;display:grid}.ruby-interview__photo{background:#e8e9e4;border-radius:12px;width:100%;overflow:hidden}.ruby-interview__photo img{width:100%;height:auto;display:block}.ruby-interview__copy h2{color:var(--ruby-ink);margin:17px 0 0;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:400;line-height:1.45}.ruby-interview__copy>p:not(.ruby-eyebrow){max-width:580px;color:var(--ruby-muted);margin:17px 0 0;font-size:14px;line-height:1.9}.ruby-interview__copy small{color:#78817d;max-width:620px;margin-top:20px;font-size:10px;line-height:1.8;display:block}.ruby-services{color:var(--ruby-ink);background:#edf0eb}.ruby-services .ruby-eyebrow{color:var(--ruby-copper)}.ruby-services .ruby-section__heading h2{color:var(--ruby-ink)}.ruby-services .ruby-section__heading>p{color:var(--ruby-muted)}.ruby-service-card:not(.ruby-service-card--booking){background:#fff;border-color:#e1e6df}.ruby-service-card:not(.ruby-service-card--booking):hover{background:#fff;border-color:#c3d2ca;box-shadow:0 14px 30px #172f350f}.ruby-service-card:not(.ruby-service-card--booking) .ruby-service-card__top{color:var(--ruby-copper)}.ruby-service-card:not(.ruby-service-card--booking) .ruby-service-card__top span:last-child{color:#819b94}.ruby-service-card:not(.ruby-service-card--booking) h3{color:var(--ruby-ink)}.ruby-service-card:not(.ruby-service-card--booking) p,.ruby-service-card:not(.ruby-service-card--booking) .ruby-service-card__detail{color:var(--ruby-muted)}.ruby-service-card:not(.ruby-service-card--booking) .ruby-service-card__detail{border-color:#e8ebe6}.ruby-disclaimer{color:#657574}.ruby-process__step{background:#f0f1ec;border-top-color:#4c7773}.ruby-process__step>span{color:var(--ruby-copper)}.ruby-contact{background:#244a4e}.ruby-contact .ruby-eyebrow{color:#d9b2a8}@media (max-width:720px){.ruby-hero--editorial{grid-template-columns:1fr;gap:34px;min-height:0;padding-block:48px 42px}.ruby-hero--editorial .ruby-hero__copy{text-align:left}.ruby-hero--editorial .ruby-eyebrow{justify-content:flex-start;font-size:10px}.ruby-hero--editorial h1{margin-top:18px;font-size:clamp(1.75rem,7vw,2.3rem)}.ruby-hero--editorial .ruby-hero__lead{margin-top:16px;font-size:13px}.ruby-hero--editorial .ruby-hero__actions{justify-content:flex-start}.ruby-hero__image{aspect-ratio:4/3;border-radius:16px;min-height:0}.ruby-hero__image-label{font-size:7px;top:13px;left:13px}.ruby-hero__image-caption{bottom:18px;left:18px;right:18px}.ruby-interview{grid-template-columns:120px 1fr;align-items:start;gap:20px;padding-block:54px}.ruby-interview__photo{border-radius:9px}.ruby-interview__copy h2{margin-top:12px;font-size:clamp(1.1rem,4.2vw,1.4rem)}.ruby-interview__copy>p:not(.ruby-eyebrow){margin-top:10px;font-size:12px}.ruby-interview__copy small{grid-column:1/-1;margin-top:12px;font-size:9px}}.ruby-home{--ruby-paper:#fafaf7;--ruby-ink:#203536;--ruby-muted:#596867;--ruby-copper:#8e7350;--ruby-teal:#244a49;--ruby-surface:#eff2ee;--ruby-line:#cdd6ce}.ruby-home .ruby-header,.ruby-detail-page .ruby-header{border-bottom:1px solid #e2e5df;min-height:76px}.ruby-home .ruby-button{box-shadow:none;border-radius:12px;font-weight:500}.ruby-home .ruby-button:hover{box-shadow:none;background:#345b58;border-color:#345b58}.ruby-home a:focus-visible,.ruby-home button:focus-visible{outline-offset:5px;outline:2px solid #467773}.ruby-home .ruby-hero--editorial{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(36px,5vw,80px);min-height:660px;padding-block:80px 96px}.ruby-home .ruby-hero--editorial h1{letter-spacing:-.055em;margin-top:30px;font-size:clamp(2rem,3.4vw,3rem);font-weight:400;line-height:1.5}.ruby-home .ruby-hero__lead{max-width:440px;margin-top:28px;font-size:14px;line-height:2.1}.ruby-home .ruby-hero__actions{gap:26px;margin-top:36px}.ruby-home .ruby-hero__note{max-width:420px;color:var(--ruby-muted);font-weight:400;line-height:1.8}.ruby-home .ruby-hero__image{aspect-ratio:auto;background:var(--ruby-paper);min-height:0;box-shadow:none;border:0;border-radius:8px}.ruby-home .ruby-hero__image:before,.ruby-home .ruby-hero__image:after{content:none}.ruby-home .ruby-hero__image-photo{width:100%;height:auto;display:block;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18px calc(100% - 18px),#0000),linear-gradient(#0000,#000 18px calc(100% - 18px),#0000);mask-image:linear-gradient(90deg,#0000,#000 18px calc(100% - 18px),#0000),linear-gradient(#0000,#000 18px calc(100% - 18px),#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.ruby-home .ruby-hero__image-label{text-align:center;border-radius:0;padding:12px 10px;font-weight:600;top:0;left:0;right:50%}.ruby-home .ruby-hero__image-caption{border-top:1px solid var(--ruby-line);color:var(--ruby-ink);gap:14px;padding:24px 28px;position:static}.ruby-home .ruby-hero__image-caption strong{text-shadow:none;font-size:clamp(1.3rem,2vw,1.6rem);font-weight:500}.ruby-home .ruby-proof-strip{color:var(--ruby-muted);letter-spacing:.08em;justify-content:space-between;padding:25px clamp(12px,5vw,72px);font-size:12px;font-weight:500}.ruby-home .ruby-section,.ruby-home .ruby-bridge{padding-block:112px}.ruby-home #yorimichi{scroll-margin-top:128px}.ruby-home .ruby-challenge{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px}.ruby-home .ruby-challenge__item p{font-weight:500;line-height:1.9}.ruby-home .ruby-section__intro>p:last-child{max-width:420px;font-size:14px;line-height:2}.ruby-home .ruby-eyebrow{color:var(--ruby-copper);letter-spacing:.14em;font-weight:500}.ruby-home .ruby-interview{grid-template-columns:216px minmax(0,1fr);gap:56px;padding-block:64px}.ruby-home .ruby-interview__photo{background:0 0;border-radius:2px;justify-self:center;margin:0;transition:opacity 1.6s,filter 1.6s;overflow:visible}.ruby-home .ruby-interview__image{border-radius:12px;overflow:hidden}.ruby-home .ruby-interview__image img{transition:transform 1.6s cubic-bezier(.2,.7,.2,1);transform:scale(1)}.ruby-home .ruby-interview__photo[data-reveal=pending]{opacity:0;filter:blur(14px)}.ruby-home .ruby-interview__photo[data-reveal=visible]{opacity:1;filter:blur()}.ruby-home .ruby-interview__photo[data-reveal=visible] .ruby-interview__image img{transform:scale(1.12)}.ruby-interview__photo figcaption{color:gray;text-align:center;margin-top:8px;font-size:11px;line-height:1.5}.ruby-home .ruby-services{background:var(--ruby-surface)}.ruby-home .ruby-services h2,.ruby-home .ruby-process h2{font-size:clamp(1.5rem,2.7vw,2.25rem);font-weight:400}.ruby-home .ruby-service-grid{gap:20px;margin-top:52px}.ruby-home .ruby-service-card{border-color:var(--ruby-line);background:var(--ruby-paper);border-radius:2px;min-height:280px;padding:28px}.ruby-home .ruby-service-card h3{font-size:19px;font-weight:500;line-height:1.65}.ruby-home .ruby-service-card__cad-image{width:100%;height:auto;margin-top:24px;display:block}.ruby-home .ruby-service-card__detail{flex-wrap:wrap;justify-content:space-between;gap:8px;line-height:1.8;display:flex}.ruby-home .ruby-service-card--booking{background:#e3ebe3;border-color:#a7b9b1}.ruby-home .ruby-service-card:hover{background:var(--ruby-paper);box-shadow:none;border-color:#a7b9b1;transform:translateY(-2px)}.ruby-home .ruby-service-card--booking:hover{background:#dce6dd}.ruby-home .ruby-process__step{background:0 0;border-top:1px solid #a7b9b1;padding:24px 8px}.ruby-home .ruby-process__step h3{font-size:19px;font-weight:500}.ruby-home .ruby-process__visual{aspect-ratio:3/2;margin:22px 0 0;overflow:hidden}.ruby-home .ruby-process__visual img{object-fit:cover;width:100%;height:100%}.ruby-home .ruby-contact{border-block:1px solid var(--ruby-line);background:var(--ruby-surface);color:var(--ruby-ink);padding-block:76px;display:block}.ruby-home .ruby-contact h2{font-size:clamp(1.5rem,2.7vw,2.25rem);font-weight:400}.ruby-home .ruby-section h2,.ruby-home .ruby-bridge__copy h2{font-weight:400;line-height:1.65}.ruby-home .ruby-bridge__copy .ruby-animated-heading>span:first-child,.ruby-home .ruby-bridge__copy .ruby-animated-heading>span:first-child span{color:#f5f5f5}.ruby-home .ruby-bridge{isolation:isolate;color:#f5f5f5;align-items:stretch;position:relative}.ruby-home .ruby-bridge:before{z-index:-1;content:"";background:#000;width:100vw;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.ruby-home .ruby-brand-story,.ruby-home .ruby-bridge__copy{min-width:0;color:inherit;background:0 0;flex-direction:column;padding:40px 24px;display:flex}.ruby-home .ruby-brand-story__eyebrow,.ruby-home .ruby-bridge__copy>.ruby-eyebrow{color:#d1bba0}.ruby-home .ruby-brand-story h3,.ruby-home .ruby-brand-story__lead,.ruby-home .ruby-bridge__copy h2,.ruby-home .ruby-bridge__copy h2 span,.ruby-home .ruby-bridge__copy>p:not(.ruby-eyebrow),.ruby-home .ruby-bridge__links a{color:#f5f5f5}.ruby-home .ruby-brand-story__roles svg{stroke:#f5f5f5}.ruby-home .ruby-brand-story__line{background:#f5f5f573}.ruby-home .ruby-bridge__links,.ruby-home .ruby-bridge__links a{border-color:#f5f5f559}.ruby-home .ruby-bridge__links a span{color:#d1bba0}.ruby-home .ruby-brand-story__eyebrow,.ruby-home .ruby-bridge__copy>.ruby-eyebrow{margin:0;font-size:11px;line-height:1.6}.ruby-home .ruby-brand-story h3,.ruby-home .ruby-bridge__copy h2{margin:17px 0 0;font-size:clamp(22px,2.3vw,32px);line-height:1.65}.ruby-home .ruby-brand-story__lead{margin:19px 0 0}.ruby-home .ruby-brand-story__roles{margin-top:auto;padding-top:40px}.ruby-home .ruby-bridge__links{margin-bottom:0}@media (max-width:720px){.ruby-home .ruby-brand-story{padding:40px 20px}.ruby-home .ruby-bridge__copy{padding:0}}.ruby-home .ruby-animated-heading span{color:inherit}.ruby-home .ruby-text-link,.ruby-footer__menu-button,.ruby-footer__links a{color:var(--ruby-ink)}.ruby-home .ruby-bridge__links a{color:#f5f5f5}.ruby-home .ruby-brand__copy small,.ruby-home .ruby-contact__copy>p:last-child{color:var(--ruby-muted)}.ruby-home .ruby-header-menu__toggle,.ruby-home .ruby-header-menu__links a,.ruby-footer__menu-button,.ruby-footer__links a,.ruby-home .ruby-bridge__links a{font-weight:500}.ruby-home .ruby-header-menu__links,.ruby-footer__links.is-open{border-color:var(--ruby-line);background:color-mix(in srgb, var(--ruby-paper) 96%, transparent);border-radius:2px;box-shadow:0 6px 20px #2035360f}@media (max-width:720px){.ruby-header-menu__links,.ruby-home .ruby-header-menu__links,.ruby-footer__links.is-open{background:color-mix(in srgb, var(--ruby-paper) 96%, transparent)}}.ruby-home .ruby-challenge__list,.ruby-home .ruby-challenge__item,.ruby-home .ruby-interview,.ruby-home .ruby-proof-strip,.ruby-home .ruby-bridge__links,.ruby-home .ruby-bridge__links a,.ruby-home .ruby-header-menu__links a,.ruby-footer__links a,.ruby-home .ruby-service-card__detail{border-color:var(--ruby-line)}.ruby-home .ruby-hero__image-label{border-color:var(--ruby-line);background:var(--ruby-paper);color:var(--ruby-muted);font-weight:500}.ruby-home .ruby-hero__image-caption span{color:var(--ruby-copper);font-weight:500}.ruby-home .ruby-service-card h3{color:var(--ruby-ink)}.ruby-home .ruby-service-card p,.ruby-home .ruby-service-card__detail,.ruby-home .ruby-contact__booking{color:var(--ruby-muted)}.ruby-home .ruby-service-card__top,.ruby-home .ruby-service-card__detail span,.ruby-home .ruby-process__step>span{color:var(--ruby-copper);font-weight:500}.ruby-home .ruby-service-card__detail{font-weight:400}.ruby-home .ruby-service-card__visual{border-radius:2px}.ruby-home .ruby-process__number{color:#a7b9b1;font-weight:300}.ruby-home .ruby-contact .ruby-button--light{border-color:var(--ruby-teal);background:var(--ruby-teal);color:var(--ruby-paper)}.ruby-home .ruby-contact .ruby-button--light:hover{background:#345b58;border-color:#345b58}.ruby-home .ruby-contact .ruby-button--line{color:#fff;background:#06c755;border-color:#06c755}.ruby-home .ruby-contact .ruby-button--line:hover{background:#05a948;border-color:#05a948}.ruby-home .ruby-contact__booking:hover,.ruby-home .ruby-bridge__links a:hover,.ruby-footer__links a:hover{color:var(--ruby-copper)}.ruby-detail-page .ruby-detail-hero h1{letter-spacing:-.055em;font-size:clamp(2rem,3.4vw,3rem);font-weight:400;line-height:1.5}.ruby-detail-page h2{letter-spacing:-.045em;font-size:clamp(1.5rem,2.7vw,2.25rem);font-weight:400;line-height:1.65}.ruby-detail-page h3{font-size:19px;font-weight:500;line-height:1.65}.ruby-detail-page .ruby-eyebrow,.ruby-detail-page .ruby-detail-number{letter-spacing:.14em;font-size:11px;font-weight:500;line-height:1.6}.ruby-detail-page .ruby-detail-lead,.ruby-detail-page .ruby-detail-overview>p,.ruby-detail-page .ruby-company-message>p:last-child,.ruby-detail-page .ruby-representative__copy>p:last-child,.ruby-detail-page .ruby-support-lead,.ruby-detail-page .ruby-support-notice>p:not(.ruby-eyebrow),.ruby-detail-page .ruby-support-options>div>p:not(.ruby-eyebrow),.ruby-detail-page .ruby-monitor-usage>div>p:not(.ruby-eyebrow),.ruby-detail-page .ruby-section__heading>p{font-size:14px;font-weight:400;line-height:2}.ruby-detail-page .ruby-button,.ruby-detail-page .ruby-detail-back,.ruby-detail-page .ruby-inline-link,.ruby-detail-page .ruby-detail-points li,.ruby-detail-page .ruby-support-list li,.ruby-detail-page .ruby-support-choice strong,.ruby-detail-page .ruby-representative__role,.ruby-detail-page dt,.ruby-detail-page .ruby-price-card dd,.ruby-detail-page .ruby-price-chart__caption strong,.ruby-detail-page .ruby-price-chart__value,.ruby-detail-page .ruby-cad-examples figcaption strong,.ruby-detail-page .ruby-inquiry__grid label,.ruby-detail-page .ruby-inquiry__consent,.ruby-detail-page .ruby-support-card>span,.ruby-detail-page .ruby-support-choice>span,.ruby-detail-page .ruby-detail-points li span:first-child,.ruby-detail-page .ruby-process__step>span,.ruby-detail-page .ruby-price-card__number,.ruby-detail-page .ruby-price-chart__method{font-weight:500}.ruby-detail-page .ruby-process__number{font-weight:300}.ruby-detail-page .ruby-button{font-size:13px}.ruby-detail-page .ruby-header .ruby-button--nav{font-size:12px}.ruby-detail-page .ruby-header-menu__toggle,.ruby-detail-page .ruby-header-menu__links a{font-weight:500}@media (max-width:720px){.ruby-detail-page .ruby-detail-hero h1{font-size:clamp(1.75rem,7vw,2.3rem)}.ruby-detail-page h3{font-size:18px}.ruby-detail-page .ruby-detail-lead,.ruby-detail-page .ruby-detail-overview>p,.ruby-detail-page .ruby-company-message>p:last-child,.ruby-detail-page .ruby-representative__copy>p:last-child,.ruby-detail-page .ruby-support-lead,.ruby-detail-page .ruby-support-notice>p:not(.ruby-eyebrow),.ruby-detail-page .ruby-support-options>div>p:not(.ruby-eyebrow),.ruby-detail-page .ruby-monitor-usage>div>p:not(.ruby-eyebrow),.ruby-detail-page .ruby-section__heading>p{font-size:13px}.ruby-detail-page .ruby-inquiry__grid input,.ruby-detail-page .ruby-inquiry__grid select,.ruby-detail-page .ruby-inquiry__grid textarea{font-size:16px}}.ruby-footer--centered{--ruby-paper:#000;--ruby-ink:#fff;--ruby-muted:#d1d1d1;--ruby-copper:#8e7350;--ruby-teal:#fff;--ruby-line:#454545;isolation:isolate;background:var(--ruby-paper);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px 24px;padding-block:28px;display:grid;position:relative}.ruby-footer--centered:before{z-index:-1;background:var(--ruby-paper);content:"";width:100vw;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.ruby-footer .ruby-brand__copy small{color:var(--ruby-muted)}.ruby-footer--centered .ruby-footer__menu-button,.ruby-footer--centered .ruby-footer__links a,.ruby-footer--centered .ruby-footer__legal a{color:#fff}.ruby-footer--centered .ruby-footer__links.is-open{background:#111;border-color:#454545}.ruby-footer--centered .ruby-footer__links a{border-color:#454545}.ruby-footer--centered>.ruby-footer__menu{grid-area:1/1}.ruby-footer--centered>p{grid-area:2/1}.ruby-footer--centered>.ruby-footer__legal{grid-row:2;line-height:1.8}.ruby-footer--centered>.ruby-brand{grid-area:1/2;justify-self:center}.ruby-footer--centered>small{color:#cdbca3;grid-area:2/2;justify-self:center}@media (max-width:720px){.ruby-footer--centered{grid-template-columns:minmax(0,1fr);gap:18px}.ruby-footer--centered>.ruby-brand,.ruby-footer--centered>small{grid-area:auto/1;justify-self:center}.ruby-footer--centered>p,.ruby-footer--centered>.ruby-footer__legal{grid-row:auto}}.ruby-contact__actions{flex-direction:column;align-items:flex-start;gap:18px;max-width:100%;display:flex}.ruby-contact__booking{color:#fffaf2;text-underline-offset:5px;font-size:12px;line-height:1.8;text-decoration:underline}.ruby-contact__booking:hover{color:#efdbad}@media (max-width:720px){.ruby-home .ruby-header,.ruby-detail-page .ruby-header{min-height:64px;padding-block:4px}.ruby-shell section[id],#company-outline{scroll-margin-top:88px}.ruby-home .ruby-hero--editorial{grid-template-columns:minmax(0,1fr);gap:44px;min-height:0;padding-block:48px 56px}.ruby-home .ruby-hero--editorial h1{margin-top:24px;font-size:clamp(1.75rem,7vw,2.3rem)}.ruby-home .ruby-hero__lead{margin-top:22px;font-size:13px}.ruby-home .ruby-hero__actions{flex-wrap:wrap;gap:20px;margin-top:28px}.ruby-home .ruby-hero__image-label{font-size:7px}.ruby-home .ruby-hero__image-caption{padding:20px 22px}.ruby-home .ruby-proof-strip{letter-spacing:0;gap:8px;padding:20px 0;font-size:10px}.ruby-home .ruby-section,.ruby-home .ruby-bridge{padding-block:64px}.ruby-home #yorimichi{scroll-margin-top:172px}.ruby-home .ruby-challenge,.ruby-home .ruby-interview{grid-template-columns:minmax(0,1fr);gap:32px}.ruby-home .ruby-interview__photo{width:180px}.ruby-home .ruby-interview__copy h2{font-size:clamp(1.4rem,6vw,1.8rem)}.ruby-home .ruby-service-card{min-height:0;padding:24px}.ruby-home .ruby-service-card h3{font-size:18px}.ruby-home .ruby-contact{padding-block:56px}}.ruby-social{color:#fff;background:#000;width:100%;padding:32px 16px}.ruby-social__links{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.ruby-social__guide{color:#c4c4c4;text-align:center;margin:0 0 12px;font-size:12px;line-height:1.8}.ruby-case-details{margin:24px 0}.ruby-ec-page{--ruby-ink:#354d43}.ruby-ec-brand{isolation:isolate;background:radial-gradient(at 85%,#f5efe3,#0000 65%);position:relative}.ruby-ec-brand__landscape{z-index:-1;pointer-events:none;width:30%;max-width:360px;height:auto;position:absolute;top:160px;right:0}.ruby-ec-brand__identity{margin-top:16px}.ruby-ec-brand .ruby-detail-lead{max-width:min(690px,68%)}.ruby-ec-brand__tagline,.ruby-ec-brand__service,.ruby-ec-brand__byline,.ruby-ec-brand__reading{color:#354d43}@media (max-width:720px){.ruby-ec-brand__landscape{display:none}.ruby-ec-brand .ruby-detail-lead{max-width:100%}}.ruby-ec-brand__logo{width:min(100%,480px);height:auto;display:block}.ruby-ec-brand__reading{letter-spacing:.18em;margin:0;font-size:14px}.ruby-ec-brand__reading span{letter-spacing:.06em;border:1px solid;margin-left:12px;padding:3px 8px;font-size:11px;display:inline-block}.ruby-ec-brand__tagline{margin:28px 0 12px;font-size:clamp(20px,3vw,32px);line-height:1.7}.ruby-ec-brand__service{margin:0;font-size:16px;line-height:1.8}.ruby-ec-brand__byline{letter-spacing:.08em;margin:8px 0 0;font-size:12px}.ruby-ec-support-stories{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px;display:grid}.ruby-ec-support-story{background:#f5f1e8;border-top:3px solid #d9947b;border-radius:0 0 16px 16px;min-width:0;padding:28px}.ruby-ec-support-story p{font-size:14px;line-height:1.9}.ruby-ec-support-story .ruby-ec-support-story__label{color:#354d43;letter-spacing:.1em;margin:0 0 20px;font-size:12px}.ruby-ec-support-story h3{text-wrap:pretty;margin:0 0 20px;font-size:21px;line-height:1.7}.ruby-ec-support-story .ruby-ec-support-story__detail{border-top:1px solid #deded8;margin:24px 0 0;padding-top:16px;font-size:12px}@media (max-width:900px){.ruby-ec-support-stories{grid-template-columns:minmax(0,1fr)}}.ruby-support-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:32px;display:grid}.ruby-support-links article{border-top:1px solid #deded8;min-width:0;padding-top:24px}.ruby-support-links h3{margin:0;font-size:18px}.ruby-support-links p{margin:16px 0;font-size:14px;line-height:1.9}@media (max-width:720px){.ruby-support-links{grid-template-columns:minmax(0,1fr)}}.ruby-case-details>div{border-top:1px solid #f5f5f559;padding-block:16px}.ruby-case-details dt{font-size:13px;font-weight:700}.ruby-case-details dd{color:#d1d1d1;margin:8px 0 0;font-size:14px;line-height:1.8}.ruby-social__link{width:48px;height:48px;color:inherit;border-radius:50%;place-items:center;text-decoration:none;display:grid}.ruby-social__link:hover{color:#d1bba0;background:#181818}.ruby-social__link:focus-visible{outline-offset:4px;outline:2px solid #d1bba0}.ruby-social__icon{width:24px;height:24px}.ruby-social__icon--x{width:20px;height:20px}@media (max-width:640px){.ruby-social__links{gap:8px}}@media (prefers-reduced-motion:reduce){.ruby-home .ruby-interview__photo[data-reveal]{opacity:1;filter:none;transition:none}.ruby-home .ruby-interview__photo[data-reveal] .ruby-interview__image img{transition:none;transform:none}}
