.layout-bone .proj-hero{padding-block:3rem 4rem;padding-inline:1.5rem;background:var(--color-bone)}@media(min-width:768px){.layout-bone .proj-hero{padding-block:4rem 6rem;padding-inline:3rem}}.layout-bone .proj-hero__inner{max-width:1320px;margin-inline:auto}.layout-bone .proj-hero__meta-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.layout-bone .proj-hero__back{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-ink-secondary);text-decoration:none;transition:color .3s,gap .4s var(--ease-out-soft);display:inline-flex;gap:.4rem}.layout-bone .proj-hero__back:hover{color:var(--color-ink-primary);gap:.6rem}.layout-bone .proj-hero__type{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-ink-tertiary)}.layout-bone .proj-hero__body{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}@media(min-width:1024px){.layout-bone .proj-hero__body{grid-template-columns:7fr 5fr;gap:4rem}}.layout-bone .proj-hero__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.layout-bone .proj-hero__tag{padding:.35rem .75rem;background:var(--color-bone-soft);border:1px solid var(--color-rule-bone);border-radius:999px;font-family:var(--font-mono);font-size:.625rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-ink-secondary)}.layout-bone .proj-hero__title{font-family:var(--font-sans);font-weight:600;font-size:clamp(3rem,9vw,8rem);line-height:.94;letter-spacing:-.04em;color:var(--color-ink-primary)}.layout-bone .proj-hero__title em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;color:var(--color-acc-lime-ink)}.layout-bone .proj-hero__description{margin-top:2rem;font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:clamp(1.25rem,1.8vw,1.625rem);line-height:1.4;color:var(--color-ink-secondary);max-width:36rem}.layout-bone .proj-hero__cta{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;margin-top:2rem;background:var(--color-ink-primary);color:var(--color-bone);border-radius:999px;font-family:var(--font-sans);font-weight:500;text-decoration:none;transition:transform .4s,background .4s,gap .4s,box-shadow .4s}.layout-bone .proj-hero__cta:hover{background:var(--color-acc-lime);color:var(--color-ink-primary);transform:translateY(-2px);gap:.7rem;box-shadow:0 12px 28px var(--color-acc-lime-glow)}.layout-bone .proj-hero__phone{position:relative;width:100%;max-width:340px;aspect-ratio:1100 / 2268;margin-inline:auto;filter:drop-shadow(0 32px 64px rgba(16,15,13,.22)) drop-shadow(0 4px 12px rgba(16,15,13,.1))}.layout-bone .proj-hero__phone:before{content:"";position:absolute;inset:-10% -10% 0;background:radial-gradient(circle at 50% 50%,rgba(200,255,61,.3) 0%,transparent 60%);filter:blur(45px);z-index:-1;animation:hero-halo-breathe 8s var(--ease-in-out-soft) infinite}.layout-bone .proj-hero__live{position:absolute;top:-.7rem;right:-.9rem;padding:.4rem .75rem;background:var(--color-ink-primary);color:var(--color-bone);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;border-radius:4px;display:inline-flex;align-items:center;gap:.5rem;transform:rotate(4deg);box-shadow:0 8px 16px #100f0d2e}.layout-bone .proj-hero__live-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--color-acc-lime);box-shadow:0 0 8px var(--color-acc-lime-glow);animation:live-pulse 2s var(--ease-in-out-soft) infinite}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.layout-bone .proj-facts{padding-block:2rem;padding-inline:1.5rem;background:var(--color-ink-primary);color:var(--color-ink-inv-primary)}@media(min-width:768px){.layout-bone .proj-facts{padding-inline:3rem}}.layout-bone .proj-facts__inner{max-width:1320px;margin-inline:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem 2rem}@media(min-width:768px){.layout-bone .proj-facts__inner{grid-template-columns:repeat(4,1fr)}}.layout-bone .proj-fact{display:flex;flex-direction:column;gap:.3rem}.layout-bone .proj-fact__label{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-ink-inv-tertiary)}.layout-bone .proj-fact__value{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:clamp(1.125rem,1.5vw,1.375rem);color:var(--color-ink-inv-primary)}.layout-bone .proj-article{padding-block:5rem 6rem;padding-inline:1.5rem}@media(min-width:768px){.layout-bone .proj-article{padding-block:7rem 8rem;padding-inline:3rem}}.layout-bone .proj-article__inner{max-width:1100px;margin-inline:auto;display:grid;grid-template-columns:1fr;gap:3rem}@media(min-width:1024px){.layout-bone .proj-article__inner{grid-template-columns:240px 1fr;gap:4rem}}.layout-bone .proj-article__sidebar{display:flex;flex-direction:column;gap:2rem}@media(min-width:1024px){.layout-bone .proj-article__sidebar{position:sticky;top:6rem;align-self:start}}.layout-bone .proj-article__sidebar-block{display:flex;flex-direction:column;gap:.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-rule-bone)}.layout-bone .proj-article__sidebar-block:last-child{border-bottom:0}.layout-bone .proj-article__sidebar-label{font-family:var(--font-mono);font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-ink-tertiary)}.layout-bone .proj-article__stack{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.layout-bone .proj-article__stack li{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:1.0625rem;color:var(--color-ink-primary)}.layout-bone .proj-article__tags{display:flex;flex-wrap:wrap;gap:.35rem}.layout-bone .proj-article__tags span{padding:.25rem .6rem;background:var(--color-bone-soft);border-radius:4px;font-family:var(--font-mono);font-size:.625rem;color:var(--color-ink-secondary)}.layout-bone .proj-article__live-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--color-ink-primary);text-decoration:none;font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:1.125rem;border-bottom:1px solid var(--color-rule-bone-strong);padding-bottom:.3rem;transition:border-color .3s,gap .4s}.layout-bone .proj-article__live-link:hover{border-color:var(--color-acc-lime-ink);gap:.6rem}.layout-bone .proj-article__body{font-family:var(--font-sans);font-size:clamp(1rem,1.15vw,1.0625rem);line-height:1.7;color:var(--color-ink-primary);max-width:56ch}.layout-bone .proj-article__body>*+*{margin-top:1.25rem}.layout-bone .proj-article__body h2{font-family:var(--font-sans);font-weight:600;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.15;letter-spacing:-.02em;margin-top:3rem;margin-bottom:.5rem;color:var(--color-ink-primary)}.layout-bone .proj-article__body h3{font-family:var(--font-sans);font-weight:600;font-size:1.25rem;line-height:1.25;letter-spacing:-.015em;margin-top:2rem;color:var(--color-ink-primary)}.layout-bone .proj-article__body p{color:var(--color-ink-secondary)}.layout-bone .proj-article__body strong{color:var(--color-ink-primary);font-weight:600}.layout-bone .proj-article__body ul,.layout-bone .proj-article__body ol{padding-left:1.5rem;color:var(--color-ink-secondary)}.layout-bone .proj-article__body ul{list-style:none;padding-left:0}.layout-bone .proj-article__body ul li{position:relative;padding-left:1.5rem;margin-bottom:.5rem}.layout-bone .proj-article__body ul li:before{content:"→";position:absolute;left:0;color:var(--color-acc-lime-ink);font-weight:600}.layout-bone .proj-article__body a{color:var(--color-ink-primary);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--color-rule-bone-strong);transition:text-decoration-color .3s}.layout-bone .proj-article__body a:hover{text-decoration-color:var(--color-acc-lime-ink)}.layout-bone .proj-article__body code{font-family:var(--font-mono);font-size:.875em;background:var(--color-bone-soft);padding:.15em .4em;border-radius:4px;color:var(--color-acc-cobalt)}.layout-bone .proj-similar{padding-block:5rem 6rem;padding-inline:1.5rem;background:var(--color-bone-soft)}@media(min-width:768px){.layout-bone .proj-similar{padding-block:7rem 8rem;padding-inline:3rem}}.layout-bone .proj-similar__inner{max-width:1320px;margin-inline:auto}.layout-bone .proj-similar__mono{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-ink-tertiary);margin-bottom:1rem}.layout-bone .proj-similar__title{font-family:var(--font-sans);font-weight:600;font-size:clamp(2rem,4.5vw,3.5rem);line-height:.96;letter-spacing:-.03em;color:var(--color-ink-primary);margin-bottom:3rem}.layout-bone .proj-similar__title em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;color:var(--color-acc-lime-ink)}.layout-bone .proj-similar__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(min-width:768px){.layout-bone .proj-similar__grid{grid-template-columns:repeat(4,1fr);gap:2.5rem}}.layout-bone .proj-similar__item{display:block;text-decoration:none;color:inherit;transition:transform .7s var(--ease-out-soft)}.layout-bone .proj-similar__item:hover{transform:translateY(-6px)}.layout-bone .proj-similar__phone{width:100%;max-width:180px;margin-inline:auto;aspect-ratio:1100 / 2268;margin-bottom:1rem}.layout-bone .proj-similar__phone .phone-frame{width:100%;height:100%}.layout-bone .proj-similar__credit{display:flex;flex-direction:column;gap:.25rem}.layout-bone .proj-similar__tag{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-ink-tertiary)}.layout-bone .proj-similar__name{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:1.25rem;color:var(--color-ink-primary)}
