/* Shared content geometry. Page-specific identity comes from real media and content. */
.ll-site h1,.ll-site h2,.ll-site h3,.ll-site p,.ll-site figure{margin-top:0}
.ll-site h2{font-size:clamp(30px,3.1vw,46px);font-weight:400;letter-spacing:-.04em;line-height:1.12;margin-bottom:22px}
.ll-site h3{font-size:clamp(20px,2vw,28px);font-weight:500;letter-spacing:-.025em;line-height:1.2;margin-bottom:16px}
.ll-site p{font-size:16px;line-height:1.7;color:var(--muted);max-width:65ch}
.ll-site figure{margin:0}.ll-site .eyebrow,.ll-site .section-label{display:block;font:500 10px/1.5 var(--font-body);letter-spacing:.17em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}
.ll-site .page-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(660px,78svh,860px);padding:100px 0;background:var(--scene);color:#f8fafb;overflow:hidden}
.ll-site .page-hero .hero-copy{position:relative;z-index:1}
.ll-site .page-hero h1{max-width:780px;font-size:clamp(42px,4.35vw,72px);font-weight:400;line-height:1.12;letter-spacing:-.045em;color:#f8fafb;margin:0;text-wrap:balance}
.ll-site .page-hero .eyebrow{color:#c0c9cf}.ll-site .page-hero .hero-description{max-width:550px;margin:26px 0 0;color:#c7d0d5;font-size:17px;line-height:1.65}
.ll-site .hero-actions,.ll-site .action-row{display:flex;gap:16px 30px;align-items:center;flex-wrap:wrap;margin-top:30px}
.ll-site .hero-motion{position:absolute;right:max(var(--gutter),calc((100% - var(--site-width))/2));bottom:24px;z-index:2;color:#c0c9cf;font-size:11px}
.ll-site .page-scene{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 76% 50%,#304342 0,#101619 65%)}
.ll-site .page-scene::after{content:none}
.ll-site .scene-lines{position:absolute;inset:-25%;opacity:.32;background-image:linear-gradient(#90aaa629 1px,transparent 1px),linear-gradient(90deg,#90aaa629 1px,transparent 1px);background-size:80px 80px;transform:perspective(700px) rotateX(55deg) rotateZ(-18deg) scale(1.4);transform-origin:70% 50%}
.ll-site .scene-orbits .scene-lines{background:repeating-radial-gradient(ellipse at 75% 50%,transparent 0 95px,#81968b40 96px 97px,transparent 98px 170px);transform:none;opacity:.45}

.ll-site .page-scene .scene-renderer{position:absolute;inset:0;opacity:0;filter:none}
.ll-site .page-scene .scene-renderer[data-state=ready]{opacity:1}
.ll-site .scene-poster{width:100%;height:100%;object-fit:cover;opacity:1;filter:none}
.ll-site .page-scene:has(.scene-renderer[data-state=ready]) .scene-poster{visibility:hidden}
.ll-site .site-section,.ll-site.home-page main>section:not(.hallway-hero){padding:88px 0;background:#fff;border-bottom:1px solid var(--line)}
.ll-site .section-heading,.ll-site .section-header{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:48px;text-align:left}
.ll-site .section-heading h2,.ll-site .section-header h2{margin-bottom:0;max-width:740px}.ll-site .section-heading>p{max-width:390px;margin:0}.ll-site .section-header{display:block}.ll-site .section-header>p{margin-top:20px}
.ll-site .site-button{--button-ink:var(--ink);--button-fill:var(--ink);--button-hover:#fff;position:relative;isolation:isolate;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:48px;padding:12px 20px;border:0;border-bottom:1px solid var(--button-ink);border-radius:0;background:transparent;color:var(--button-ink);text-decoration:none;box-shadow:none;font:500 14px/1.5 var(--font-body);cursor:pointer}
.ll-site .site-button::before{content:'';position:absolute;z-index:-1;inset:0;background:var(--button-fill);transform:scaleY(0);transform-origin:bottom}
.ll-site .page-hero .site-button{--button-ink:#fff;--button-fill:#fff;--button-hover:#000}
.ll-site .site-button:focus-visible,.ll-site .site-button:active{color:var(--button-hover)}.ll-site .site-button:focus-visible::before,.ll-site .site-button:active::before{transform:scaleY(1)}
.ll-site .text-action{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:inherit;font:500 13px/1.5 var(--font-body);text-decoration:none;cursor:pointer}
.ll-site .text-action[disabled]{opacity:.65;cursor:default}.ll-site .text-action[aria-pressed=true]{color:#8a5819}
.ll-site .disclosure{border-top:1px solid var(--line)}.ll-site .disclosure:last-child{border-bottom:1px solid var(--line)}
.ll-site summary{display:flex;align-items:center;gap:24px;min-height:72px;padding:26px 0;list-style:none;cursor:pointer}
.ll-site summary::-webkit-details-marker{display:none}.ll-site summary h3{margin:0;flex:1}.ll-site .disclosure-mark{margin-left:auto;flex:0 0 24px;font-size:24px;line-height:1;font-weight:300;text-align:center}
.ll-site details[open]>.disclosure-mark,.ll-site details[open]>summary .disclosure-mark{transform:rotate(45deg)}
.ll-site .row-number{color:var(--muted);font-size:12px;min-width:36px}.ll-site .service-rate{font-size:14px;color:var(--muted);white-space:nowrap}
.ll-site .disclosure-body{padding:0 0 32px 60px}.ll-site .disclosure-body p{max-width:700px}.ll-site .service-output{margin:22px 0}
.ll-site .process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;list-style:none;padding:0;margin:0}.ll-site .process-list li{padding-top:24px;border-top:1px solid var(--line)}.ll-site .process-list h3{font-size:24px}
.ll-site .project-row{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:clamp(32px,5vw,72px);padding:64px 0;border-top:1px solid var(--line)}
.ll-site .project-row:first-child{padding-top:0;border-top:0}.ll-site .project-row:last-child{padding-bottom:0}
.ll-site .project-row:nth-child(even) .project-media{order:2}.ll-site .project-row:nth-child(even) .project-copy{order:1}
.ll-site .project-media{position:relative;overflow:hidden;background:#edf0f1}.ll-site .project-media>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.ll-site .project-copy h2{font-size:clamp(28px,3vw,42px)}.ll-site .project-copy .eyebrow{margin-bottom:18px}.ll-site .project-status{font-size:12px;color:#775021;border-left:2px solid #b18e58;padding-left:12px}
.ll-site .project-details summary{font-size:13px;min-height:56px;padding:12px 0}.ll-site .project-details .disclosure-body{padding:0 0 20px}
.ll-site dl{font-size:14px;margin:0 0 20px}.ll-site dl>div{display:grid;grid-template-columns:100px 1fr;gap:12px;padding:8px 0}.ll-site dt{color:var(--muted)}.ll-site dd{margin:0}
.ll-site .media-open{position:absolute;right:14px;bottom:14px;z-index:1;display:grid;place-items:center;width:44px;height:44px;background:#fff;color:var(--ink);border:0;font-size:22px;cursor:pointer}
.ll-site .media-dialog{max-width:min(1100px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:20px;border:0;background:#fff;color:var(--ink)}
.ll-site .media-dialog::backdrop{background:#061015db}.ll-site .media-dialog img{display:block;max-width:100%;max-height:75svh;object-fit:contain;margin:auto}
.ll-site .dialog-close{display:block;min-height:44px;margin-left:auto;margin-bottom:12px;padding:8px 12px;background:#fff;color:var(--ink);border:1px solid var(--line);cursor:pointer}
.ll-site .media-dialog p{margin:16px 0 0;font-size:13px}
.ll-site .systems-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:start}.ll-site .system-row{display:flex;gap:24px;padding:28px 0;border-top:1px solid var(--line)}.ll-site .system-row h3{font-size:24px}.ll-site .system-row p{font-size:15px;margin-bottom:16px}
.ll-site .study-view{position:sticky;top:72px}.ll-site .study-stage{position:relative;aspect-ratio:3/2;background:#f4f6f5;border:1px solid var(--line);overflow:hidden}.ll-site .study-stage img,.ll-site .study-stage shader-renderer{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.ll-site .study-view figcaption{padding:24px 0}.ll-site .study-view h3{font-size:22px}.ll-site .study-view p{font-size:14px}.ll-site .study-status:empty{display:none}
.ll-site .team-member{display:grid;grid-template-columns:1fr 1.15fr;gap:72px;align-items:center;border-top:1px solid var(--line);padding:56px 0}.ll-site .team-member:first-child{border-top:0;padding-top:0}.ll-site .team-member:last-child{padding-bottom:0}
.ll-site .team-member:nth-child(even) .robot-portrait{order:2}.ll-site .team-member:nth-child(even) .team-copy{order:1}
.ll-site .robot-stage{position:relative;aspect-ratio:1;max-height:430px;background:radial-gradient(ellipse,#e8eeec,transparent 70%);overflow:hidden}.ll-site .robot-stage img,.ll-site .robot-stage canvas{display:block;width:100%;height:100%;object-fit:contain}.ll-site .robot-stage canvas{position:absolute;inset:0}.ll-site .robot-portrait figcaption{text-align:center;min-height:44px}.ll-site .robot-status{display:block;font-size:12px;color:var(--muted)}
.ll-site .contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.ll-site .contact-address{display:block;width:fit-content;margin-bottom:20px;font-size:clamp(18px,2.4vw,24px);overflow-wrap:anywhere}.ll-site .copy-status{font-size:13px;min-height:44px;margin-top:16px}
.ll-site .draft-form{display:flex;flex-direction:column;align-items:flex-start}.ll-site .draft-form label{font-size:14px;margin-bottom:12px}.ll-site .draft-form select,.ll-site .draft-form textarea{display:block;width:100%;min-height:48px;padding:12px;background:#fff;color:var(--ink);border:1px solid #a3aeb4;border-radius:0;margin-bottom:24px}.ll-site textarea{resize:vertical}.ll-site .form-note{font-size:13px}
/* Cabinet drawings stay large and intact, including the front elevation. */
.ll-site .cabinet-layout{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:48px;position:relative;z-index:1}.ll-site .cabinet-hero .hero-copy{width:auto;margin:0}.ll-site .cabinet-hero h1{max-width:420px}.ll-site .cabinet-hero .lede{font-size:24px;line-height:1.35;color:#e2e7e9;margin:24px 0 0}.ll-site .cabinet-hero .hero-description{font-size:15px;max-width:340px;margin:24px 0}.ll-site .cabinet-hero .text-action{display:flex;width:fit-content;margin-top:14px;color:#c7d0d5}
.ll-site .cabinet-drawing{padding:26px;background:#f2f3f0;color:var(--ink)}.ll-site .cad-views{display:grid;grid-template-columns:1.35fr .65fr;gap:16px;align-items:end}.ll-site .cabinet-drawing img{display:block;width:100%;max-height:480px;object-fit:contain;mix-blend-mode:multiply;filter:grayscale(1) contrast(1.08)}
.ll-site .cabinet-drawing figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px;padding-top:16px;border-top:1px solid #b8c0c0;color:var(--muted);font:400 10px/1.5 var(--font-body)}
.ll-site .revival-grid{display:grid;grid-template-columns:.7fr 1.3fr .7fr;gap:40px;align-items:center}.ll-site .side-drawing img{width:100%;max-height:440px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply}.ll-site .side-drawing figcaption{text-align:center;color:var(--muted);font-size:11px;margin-top:16px}
.ll-site .overview-points article{border-top:1px solid var(--line);padding:28px 0}.ll-site .overview-points h3{font-size:24px}.ll-site .overview-points p{font-size:14px}.ll-site .revival-action{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line)}
/* Homepage content retains the existing information and routes. */
.ll-site.home-page .cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.ll-site.home-page .cap-card{min-width:0}
.ll-site.home-page .card-grid,.ll-site.home-page .oss-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.ll-site.home-page .nexus-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:20px 0 36px}.ll-site.home-page .nexus-strip-item span{display:block;font-size:14px}.ll-site.home-page .nexus-strip-item small{color:var(--muted);font-size:12px;line-height:1.6}
.ll-site.home-page .nexus-card-media,.ll-site.home-page .card-media{position:relative;overflow:hidden}.ll-site.home-page .nexus-card-media img,.ll-site.home-page .card-media img{display:block;width:100%;height:280px;object-fit:cover}.ll-site.home-page .badge,.ll-site.home-page .nexus-card-media-badge{position:absolute;bottom:12px;left:12px;background:#fff;padding:6px 10px;color:var(--ink);font-size:10px}
.ll-site.home-page .nexus-card-body,.ll-site.home-page .card-body{padding:26px 0}.ll-site.home-page .nexus-card-kicker{display:block;font-size:11px;color:var(--muted);margin-bottom:14px}.ll-site.home-page .nexus-card-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.ll-site.home-page .nexus-card-footer a{min-height:44px;display:inline-flex;align-items:center;font-size:13px}.ll-site.home-page .tech-tags{display:flex;gap:12px}.ll-site.home-page .tech-tag{font-size:10px;color:var(--muted)}
.ll-site.home-page .stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.ll-site.home-page .stat-number{display:block;font-size:32px;font-weight:400}.ll-site.home-page .stat-label{display:block;font-size:12px;color:var(--muted);margin-top:12px}.ll-site.home-page .section-divider{display:none}.ll-site.home-page .cta-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}
.ll-site .arcade-return{display:inline-flex;align-items:center;min-height:44px;margin-bottom:24px;font-size:13px}
@media(hover:hover){.ll-site .site-button:hover{color:var(--button-hover)}.ll-site .site-button:hover::before{transform:scaleY(1)}.ll-site .text-action:hover{color:#8a5819}}
@media(max-width:1000px){.ll-site .cabinet-layout{gap:30px}.ll-site .systems-layout{gap:32px}.ll-site .contact-layout{gap:40px}.ll-site .team-member{gap:40px}.ll-site .revival-grid{gap:24px}}
@media(max-width:760px){
 .ll-site .page-hero{min-height:620px;padding:72px 0 100px}.ll-site .page-hero h1{font-size:clamp(35px,8.8vw,48px);line-height:1.14;letter-spacing:-.035em;text-wrap:initial}.ll-site .page-hero .hero-description{font-size:16px;max-width:500px}.ll-site .page-hero h1 br{display:none}.ll-site .hero-motion{bottom:18px}
 .ll-site .site-section,.ll-site.home-page main>section:not(.hallway-hero){padding:60px 0}.ll-site .section-heading{display:block;margin-bottom:32px}.ll-site .section-heading>p{margin-top:24px}
 .ll-site .project-row,.ll-site .team-member,.ll-site .systems-layout,.ll-site .contact-layout{grid-template-columns:1fr;gap:30px}.ll-site .project-row{padding:40px 0}.ll-site .project-row:nth-child(even) .project-media,.ll-site .project-row:nth-child(even) .project-copy,.ll-site .team-member:nth-child(even) .robot-portrait,.ll-site .team-member:nth-child(even) .team-copy{order:initial}
 .ll-site .study-view{position:static}.ll-site .process-list{grid-template-columns:1fr 1fr;gap:24px}.ll-site summary{gap:12px;flex-wrap:wrap}.ll-site .service-row summary{display:grid;grid-template-columns:24px 1fr 24px;gap:12px}.ll-site .service-row .service-rate{grid-column:2;font-size:12px}.ll-site .service-row .disclosure-mark{grid-column:3;grid-row:1/3}.ll-site .service-row h3{font-size:20px}.ll-site .disclosure-body{padding-left:36px}.ll-site .row-number{min-width:24px}
 .ll-site .cabinet-hero{padding:48px 0 76px;min-height:0}.ll-site .cabinet-layout{grid-template-columns:1fr;gap:28px}.ll-site .cabinet-hero h1{max-width:none;font-size:42px}.ll-site .cabinet-hero .lede{font-size:18px;margin-top:16px}.ll-site .cabinet-hero .lede br{display:none}.ll-site .cabinet-hero .hero-description{margin:16px 0;max-width:500px}.ll-site .cabinet-drawing{padding:20px}.ll-site .cabinet-drawing img{max-height:380px}.ll-site .cabinet-drawing figcaption{font-size:9px;margin-top:18px;padding-top:12px}
 .ll-site .revival-grid{grid-template-columns:1fr 1fr;gap:28px}.ll-site .overview-points{grid-column:1/-1;grid-row:1}.ll-site .side-drawing img{max-height:310px}.ll-site .revival-action p{margin-bottom:0}
 .ll-site.home-page .cap-grid,.ll-site.home-page .card-grid,.ll-site.home-page .oss-grid{grid-template-columns:1fr;gap:24px}.ll-site.home-page .stats-bar{grid-template-columns:1fr 1fr;gap:32px}.ll-site.home-page .nexus-strip{grid-template-columns:1fr;gap:16px}.ll-site.home-page .nexus-card-media img,.ll-site.home-page .card-media img{height:auto;aspect-ratio:3/2}.ll-site .robot-stage{max-height:360px}
}
/* A tight outline follows only the letters; scene pixels stay full-color and opaque. */
.ll-site .page-hero h1,.ll-site .page-hero .hero-copy p,.ll-site .page-hero .text-action,.ll-site .page-hero .hero-motion{
 color:#fff;
 text-shadow:-1px 0 #142028,1px 0 #142028,0 -1px #142028,0 1px #142028;
}
.ll-site .page-hero .site-button{text-shadow:0 1px 2px #142028}
.ll-site .page-hero .site-button:hover,.ll-site .page-hero .site-button:focus-visible,.ll-site .page-hero .site-button:active{text-shadow:none}
