@font-face{font-family:Space;src:url('/assets/space-grotesk.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{color-scheme:dark;--base:#121110;--panel:#1a1917;--line:#3a3732;--ink:#f4ede2;--muted:#b8afa3;--accent:#ff7944;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--display:Space,"Helvetica Neue",Arial,sans-serif;--body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{--header-height:82px;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1px)}
body{margin:0;background:var(--base);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}
.studio-page{isolation:isolate;--field-light:#a64a313d;--field-line:#d5a68b1a;--field-secondary:#54468029}
.studio-page.theme-rushtrack{--field-light:#664d9b52;--field-line:#bba1ff20;--field-secondary:#a6564327}
.studio-page.theme-rein{--field-light:#33785a52;--field-line:#a0d8b821;--field-secondary:#37616427}
.site-field{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;
  background:radial-gradient(ellipse at 91% 13%,var(--field-light),transparent 52%),
    radial-gradient(ellipse at 6% 93%,var(--field-secondary),transparent 56%),#161412}
.site-field::before{content:"";position:absolute;inset:-18% -12%;opacity:.68;
  background-image:linear-gradient(90deg,var(--field-line) 1px,transparent 1px),
    linear-gradient(var(--field-line) 1px,transparent 1px);
  background-size:72px 72px;mask-image:radial-gradient(ellipse at 72% 50%,#000 15%,transparent 75%);
  transform:skewY(-9deg)}
@supports(animation-timeline:scroll(root block)){
  @media(prefers-reduced-motion:no-preference){
    .site-field::before{animation:field-drift linear both;animation-timeline:scroll(root block)}
    @keyframes field-drift{from{transform:translateY(-26px) skewY(-9deg)}to{transform:translateY(42px) skewY(-9deg)}}
  }
}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{touch-action:manipulation}
a{color:inherit}
button{cursor:pointer}
[hidden]{display:none!important}
img{display:block;max-width:100%;height:auto}
figure,h1,h2,h3,p,dl,dd{margin:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
::selection{background:var(--accent);color:#14110d}
.shell{width:min(100% - 96px,1376px);margin-inline:auto}
.skip{position:fixed;z-index:20;left:1rem;top:1rem;transform:translateY(-200%);background:var(--ink);color:var(--base);padding:8px 12px}
.skip:focus{transform:none}
.top{
  position:sticky;top:0;z-index:10;
  border-bottom:1px solid var(--line);background:#171513;
  box-shadow:0 5px 24px #08060533;
  transition:background-color .18s ease,box-shadow .18s ease
}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .top{
    background:rgb(18 17 16 / 72%);
    -webkit-backdrop-filter:blur(20px) saturate(140%);
    backdrop-filter:blur(20px) saturate(140%)
  }
}
.top[data-at-top]{background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
@media(prefers-reduced-transparency:reduce){
  .top,.top[data-at-top]{background:#171513;-webkit-backdrop-filter:none;backdrop-filter:none}
}
.nav-shell{min-height:var(--header-height);display:grid;grid-template-columns:auto 1fr auto;gap:clamp(12px,2.2vw,34px);align-items:center}
.brand{display:inline-flex;align-items:center;gap:10px;width:max-content;text-decoration:none;font-family:var(--display);font-size:24px;font-weight:700;line-height:1;letter-spacing:-.06em}
.brand .mark{width:68px;height:36px;object-fit:cover}
.brand small{display:block;margin-top:6px;font:9px/1 var(--mono);letter-spacing:.15em;color:var(--muted)}
.nav-desktop{display:flex;align-items:center;justify-content:center;gap:clamp(14px,2vw,32px)}
.nav-desktop a,.nav-mobile nav a{color:var(--muted);font-size:.9rem;font-weight:600;text-decoration:none}
.nav-desktop a:hover,.nav-mobile nav a:hover,.nav-desktop a:is([aria-current=page],[data-current-section]),.nav-mobile a:is([aria-current=page],[data-current-section]){color:var(--ink)}
.nav-desktop a:is([aria-current=page],[data-current-section]){text-decoration:underline;text-underline-offset:8px;text-decoration-color:var(--accent)}
.nav-tools,.nav-preferences{display:flex;align-items:center;gap:10px}
.nav-action{display:flex;align-items:center;min-height:44px;text-decoration:none;border:1px solid var(--line);padding:8px 12px;font-size:.86rem;white-space:nowrap}
.nav-action:hover,.nav-action[aria-current="page"]{border-color:var(--accent)}
.nav-action span{margin-left:10px;color:var(--accent)}
.preference-control{position:relative;display:flex;align-items:center;gap:5px}
.preference-control svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--accent);stroke-width:1.25;color:var(--accent)}
.preference-control::after{content:"";position:absolute;right:10px;top:50%;width:6px;height:6px;border:solid currentColor;border-width:0 1px 1px 0;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.nav-preferences select[data-language-select]{min-height:44px;max-width:100%;padding:5px 7px;border:1px solid #76685a;border-radius:0;background:var(--panel);color:var(--ink);font-size:.86rem;font-weight:600;cursor:pointer}
.nav-preferences select:is([data-language-select],[data-theme-select]){appearance:none;-webkit-appearance:none;height:44px;padding-inline-end:24px}
.nav-preferences select[data-language-select]:hover{border-color:var(--accent)}
.nav-mobile{display:none}
.eyebrow,.frame-top,.hero-frame figcaption,.signal-strip,.demo-top,.graphic-meta,.graphic-foot,.result-count{font:600 .68rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.eyebrow{display:inline-flex;gap:9px;align-items:center;color:var(--accent)}
.hero{min-height:620px;display:grid;grid-template-columns:minmax(0,0.83fr) minmax(0,1.17fr);align-items:center;gap:55px;padding-block:60px}
.hero h1,.page-intro h1{font:700 clamp(4.2rem,7.5vw,8.3rem)/.88 var(--display);letter-spacing:-.093em;margin:22px 0 26px}
h1 em,h2 em{color:var(--accent);font-style:normal}
.hero-copy>p,.page-intro>p{max-width:40ch;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.55;color:var(--muted)}
.hero-actions,.link-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:30px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:13px;min-height:48px;border:1px solid transparent;padding:10px 15px;text-decoration:none;color:var(--ink);background:none;font-size:.9rem;font-weight:700;line-height:1.3;transition:background .2s,color .2s,border-color .2s}
.button span{font-size:1.18rem}
.button.primary{background:var(--accent);border-color:var(--accent);color:#15100e}
.button.primary:hover{background:#ffa484;border-color:#ffa484}
.button.outline{border-color:var(--line)}
.button.outline:hover,.button.quiet:hover{border-color:var(--accent);color:var(--accent)}
.button.quiet{padding-inline:12px}
.demo-jump span:first-child{font-size:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--accent)}
.demo-jump span[aria-hidden]{color:var(--accent)}
.hero-frame{background:#161412;border:1px solid #464039;position:relative;padding:10px}
.hero-frame::before,.hero-frame::after{content:"";position:absolute;width:14px;height:14px;pointer-events:none}
.hero-frame::before{left:-1px;top:-1px;border-left:2px solid var(--accent);border-top:2px solid var(--accent)}
.hero-frame::after{right:-1px;bottom:-1px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent)}
.frame-top,.hero-frame figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#c2b9ab;padding:6px 5px 11px}
.frame-top i,.signal-strip .live i,.demo-top i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px #ff794470}
.frame-image{position:relative;overflow:hidden;aspect-ratio:1.5;background:#24160f}
.frame-image img{width:100%;height:100%;object-fit:cover;object-position:58% 48%}
.hero-frame figcaption{padding-block:11px 4px;color:var(--muted)}
.hero-frame figcaption span:first-child{color:var(--accent)}
.signal-strip{border-block:1px solid var(--line);background:#171613;color:var(--muted)}
.signal-strip .shell{display:flex;justify-content:space-between;gap:20px;min-height:52px;align-items:center}
.signal-strip .live{color:var(--ink)}
.section{padding-block:100px}
.section-tight{padding-block:0 76px}
.section-head{display:grid;grid-template-columns:1fr 1fr;gap:14px 38px;align-items:end;margin-bottom:35px}
.section-head>.eyebrow{grid-column:1/-1}
.section-head h2,.callout h2,.split-note h2,.contact-card h2,.detail-body h2{font:700 clamp(2.7rem,5.1vw,5rem)/.96 var(--display);letter-spacing:-.073em}
.section-head p,.callout p,.split-note p,.contact-card p,.detail-body p{color:var(--muted);max-width:51ch;line-height:1.62}
.section-head p{justify-self:end}
.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.project-card{min-width:0;background:#191816;border:1px solid var(--line);transition:transform .22s,border-color .22s}
.project-card>a{height:100%;display:flex;flex-direction:column;text-decoration:none}
.project-card>a:focus-visible{outline-offset:3px}
.card-content{min-height:155px;padding:24px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.card-content>div{min-width:0}
.card-content .eyebrow{font-size:.62rem;letter-spacing:.1em;color:var(--muted)}
.card-content h3{font:700 clamp(1.8rem,3.2vw,3.3rem)/1 var(--display);letter-spacing:-.065em;margin:7px 0 8px;overflow-wrap:anywhere}
.card-content p{color:var(--muted);font-size:.94rem;max-width:42ch}
.card-arrow{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:1px solid var(--line);font-size:1.13rem;color:var(--accent)}
.project-card>a:is(:focus-visible,:active) .card-arrow{background:var(--accent);color:var(--base);border-color:var(--accent)}
@media(hover:hover) and (pointer:fine){
  .project-card:hover{border-color:var(--accent);transform:translateY(-3px)}
  .project-card>a:hover .card-arrow{background:var(--accent);color:var(--base);border-color:var(--accent)}
}
.card-visual{height:clamp(190px,25vw,365px);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.card-visual.photo img{width:100%;height:100%;object-fit:cover}
.visual-rush,.visual-rein{display:grid;place-items:center;align-content:center;padding-inline:9%;background:#21163c radial-gradient(ellipse at 52% 120%,#6547a9 0%,transparent 70%)}
.visual-rush::before,.visual-rein::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 32px,#c6b6ff13 33px 34px),repeating-linear-gradient(0deg,transparent 0 32px,#c6b6ff13 33px 34px);mask-image:linear-gradient(#000,transparent 85%);pointer-events:none}
.visual-rush>.cal-graphic,.visual-rein>.money-graphic{position:relative;width:min(100%,410px);box-shadow:0 15px 35px #08060b94;transform:rotate(-4deg)}
.visual-rein{background:#183328 radial-gradient(ellipse at 50% 115%,#40735a 0%,transparent 75%)}
.visual-rein>.money-graphic{transform:rotate(4deg)}
.cal-graphic,.delivery-graphic,.money-graphic{padding:15px;border:1px solid #665483;background:#171222;min-width:0}
.graphic-meta,.graphic-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;color:#c7b9db;letter-spacing:.07em}
.graphic-meta{padding-bottom:12px}
.graphic-meta b{color:#efe4ff}
.graphic-foot{padding-top:11px;border-top:1px solid #5a4b676e}
.cal-grid{background:repeating-linear-gradient(90deg,transparent 0 13%,#7b6a9535 13.2% 13.6%),#201934;padding:8px}
.cal-days{display:flex;justify-content:space-around;color:#d4c8e2;font:10px var(--mono);padding:0 0 4px 20px}
.cal-row{height:20px;position:relative;border-top:1px solid #75678a48;padding-left:2px;display:flex;align-items:center}
.cal-row b{font:10px var(--mono);color:#e1d6f2}
.cal-row i{position:absolute;height:6px;border-radius:3px;left:calc(25px + var(--left) * .78);width:calc(var(--width) * .78);background:var(--bar)}
.money-graphic{background:#14251e;border-color:#557962;color:#e7f7eb}
.money-graphic .graphic-meta,.money-graphic .graphic-foot{color:#b1d2bc}
.money-graphic .graphic-meta b{color:#c6f0d7}
.money-graphic p{font-size:.73rem;color:#a1c7ac}
.money-graphic>strong{font:700 clamp(1.4rem,3vw,2.4rem)/1 var(--display);letter-spacing:-.04em}
.money-chart{height:70px;display:flex;gap:8px;align-items:end;margin:9px 0;padding-inline:4px}
.money-chart i{height:var(--size);flex:1;background:linear-gradient(#9fe7b7,#4e9573);border-radius:4px 4px 0 0}
.money-graphic .graphic-foot{border-color:#55796263}
.visual-archivo,.visual-jaque,.visual-tigre{padding:20px 22px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}
.visual-archivo span,.visual-jaque span,.visual-tigre span{font:600 .63rem var(--mono);letter-spacing:.15em;position:relative}
.visual-archivo span:last-child,.visual-jaque span:last-child,.visual-tigre span:last-child{align-self:end}
.visual-archivo{background:#343529;color:#e7e6c9}
.visual-jaque{background:#382028;color:#ffd5df}
.visual-tigre{background:#243943;color:#d4eef7}
.graphic-texture{position:absolute;inset:0;z-index:-1;opacity:.65;background:repeating-linear-gradient(119deg,transparent 0 8px,#ffffff13 8px 9px),radial-gradient(ellipse at 70% 55%,#ffffff24,transparent 65%)}
.visual-jaque .graphic-texture{background:conic-gradient(from 90deg,#f57b7725 25%,#0003 0 50%,#f57b7725 0 75%,#0003 0) 0 0/72px 72px;transform:rotate(-12deg) scale(1.5)}
.visual-tigre .graphic-texture{background:repeating-linear-gradient(49deg,#0000 0 20px,#73acbb49 21px 23px,#0007 24px 36px)}
.visual-archivo>b,.visual-jaque>b,.visual-tigre>b{font:700 clamp(2rem,5.6vw,6rem)/.87 var(--display);letter-spacing:-.095em;max-width:10ch;position:relative;overflow-wrap:anywhere}
.lab-band{background:#191715;border-block:1px solid var(--line)}
.workflow{border:1px solid #4d443b;background:#1e1b18;min-width:0}
.demo-top{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid #4d443b;color:var(--muted)}
.demo-top span:first-child{color:#ffd6c0}
.demo-tabs{display:none}
[data-tab-demo][data-ready] .demo-tabs{display:flex;gap:1px;background:#4a433a;border-bottom:1px solid #4a433a}
.tab-demo--stable[data-ready]{display:grid;grid-template-columns:minmax(0,1fr)}
.tab-demo--stable[data-ready]>.demo-tabs{grid-row:1}
.tab-demo--stable[data-ready]>[data-demo-panel]{grid-area:2/1;min-width:0}
.tab-demo--stable[data-ready]>[data-demo-panel]>.demo-panel{height:100%}
/* The tallest panel reserves the shared row without exposing inactive panels. */
.tab-demo--stable[data-ready]>[data-demo-panel][hidden]{display:block!important;visibility:hidden;pointer-events:none}
.tab-demo--stable[data-ready]>[data-demo-panel]:focus-visible{outline-offset:-4px}
.demo-tabs button{flex:1;min-width:0;min-height:56px;text-align:left;padding:10px 18px;border:0;background:#27231f;color:#e1d6c9;font-size:.93rem;font-weight:700;overflow-wrap:anywhere}
.demo-tabs button span{color:#cfab95;margin-right:8px;font:.67rem var(--mono)}
.demo-tabs button[aria-selected=true]{background:#38251b;color:#fff3e7;box-shadow:inset 0 -2px var(--accent)}
.demo-tabs button:hover{background:#3d3027}
.demo-tabs button:focus-visible{position:relative;z-index:1;outline-offset:-4px}
.demo-panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:38px;align-items:center;padding:35px 38px;min-height:265px}
.demo-panel h3{font:700 clamp(1.8rem,3.1vw,3.2rem)/.99 var(--display);letter-spacing:-.06em;margin-bottom:12px}
.demo-panel p{color:var(--muted);max-width:47ch;min-height:3em}
.demo-data{display:flex;gap:22px;flex-wrap:wrap;margin-top:20px}
.demo-data dt,.money-detail dt{color:var(--muted);font-size:.76rem}
.demo-data dd,.money-detail dd{margin:2px 0 0;font-family:var(--mono);color:var(--ink);font-weight:700}
.demo-visual{min-width:0}
.demo-visual .cal-graphic,.demo-visual .delivery-graphic{padding:18px}
.demo-visual .graphic-meta,.demo-visual .graphic-foot{flex-wrap:wrap}
.demo-visual .cal-row{height:24px}
.shot-graphic{position:relative;aspect-ratio:2.25;min-height:155px;border:1px solid #84503b;overflow:hidden}
.product-detail-demo .shot-graphic{width:100%}
.shot-graphic img{height:100%;width:100%;object-fit:cover;object-position:64% 47%}
.shot-overlay{position:absolute;inset:auto 0 0;background:#130d0adb;color:#fff1e8;display:flex;justify-content:space-between;gap:8px;align-items:center;padding:9px;font:600 .66rem var(--mono)}
.shot-overlay b{color:var(--accent)}
.delivery-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #584966}
.delivery-row i{font:600 .7rem var(--mono);color:#c7b9db;font-style:normal}
.delivery-row strong{font-size:.9rem;line-height:1.3}
.delivery-row small{display:block;font-size:.67rem;color:#c7b9db;font-weight:400}
.status{font-size:.68rem;margin-left:auto;padding:4px 7px;font-weight:700;text-align:center}
.status.fix{color:#ffd9b7;background:#5c3328}
.status.ok{color:#baf2cb;background:#204d32}
.after-demo{margin-top:22px}
.callout{position:relative;display:flex;justify-content:space-between;align-items:end;gap:24px;border:1px solid #5b463b;border-left:3px solid var(--accent);padding:32px;margin:10px 0 88px;background:linear-gradient(119deg,#38251edd,#1a1716e8 58%,#251c20c7)}
.callout::after,.studio-purpose::after{content:"";position:absolute;inset:-1px -1px auto auto;width:16px;height:16px;border-top:1px solid #ffad85;border-right:1px solid #ffad85;pointer-events:none}
.callout h2{font-size:clamp(2.3rem,4.25vw,4.1rem);margin:8px 0 12px}
.callout .button{flex-shrink:0}
.footer{background:linear-gradient(120deg,#201915,#141311 55%);border-top:1px solid var(--line)}
.footer-main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:28px;padding-block:32px}
.footer-main p{color:var(--muted);font-size:.88rem;margin-top:12px}
.footer-main .eyebrow{display:flex;margin-bottom:8px}
.footer-nav>div{display:grid;grid-template-columns:repeat(2,max-content);column-gap:clamp(16px,3vw,48px)}
.footer-nav a,.footer-email,.footer-top-link{display:flex;align-items:center;min-height:44px;font-size:.9rem;text-decoration:none}
.footer-nav a[aria-current="page"],.footer-nav a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--accent)}
.footer-contact{justify-self:end;width:min(100%,280px)}
.footer-email{justify-content:space-between;gap:12px;padding:9px 13px;border:1px solid #58483d;background:#221a16}
.footer-email span:first-child{min-width:0;overflow-wrap:anywhere}
.footer-email span[aria-hidden],.footer-top-link span{color:var(--accent)}
.footer-email:hover{border-color:var(--accent)}
.footer-bottom{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:6px;color:var(--muted)}
.footer-bottom>span{font:600 .72rem/1.4 var(--mono);letter-spacing:.09em}
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:2px 20px}
.footer-legal a{display:flex;align-items:center;min-height:44px;color:var(--muted);font-size:.83rem;text-decoration:none}
.footer-legal a:hover,.footer-legal a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.footer-top-link{gap:10px;color:var(--ink)}
.footer-top-link:hover{text-decoration:underline;text-underline-offset:5px}
.footer-top-link span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);font-size:1rem}
.footer-top-link:hover span{border-color:var(--accent)}
.page-intro{padding-block:67px 46px}
.page-intro h1{font-size:clamp(3.6rem,7vw,7.25rem);margin-top:20px}
.page-intro>p{max-width:56ch}
.projects-intro>p{max-width:68ch}
.split-note{display:flex;justify-content:space-between;align-items:end;gap:25px;border-top:1px solid var(--line);padding-top:30px}
.demo-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.demo-directory .split-note{flex-direction:column;align-items:start;gap:18px;padding:22px;border:1px solid var(--line);background:var(--panel)}
.demo-directory h3{font:700 clamp(1.8rem,3.2vw,3.2rem)/1 var(--display);letter-spacing:-.06em;margin-block:9px}
.filter-bar{display:flex;justify-content:space-between;gap:20px;align-items:end;border-block:1px solid var(--line);padding:16px 0}
.filters{display:flex;gap:7px;flex-wrap:wrap}
.filters button{min-height:44px;padding:6px 12px;border:1px solid #78685a;color:var(--ink);background:#1d1a17;font-size:.88rem}
.filters button[aria-pressed=true]{background:var(--accent);color:var(--base);border-color:var(--accent);font-weight:700}
.filters button:active{border-color:var(--accent)}
@media(hover:hover) and (pointer:fine){.filters button:hover{border-color:var(--accent)}}
.project-search{display:grid;gap:3px;max-width:260px;color:var(--muted);font-size:.8rem}
.project-search input,.contact-form input,.contact-form select,.contact-form textarea{min-width:0;width:100%;padding:9px 12px;border:1px solid #5b534a;border-radius:0;color:var(--ink);background:#151311}
.project-search input{min-height:44px;font-size:1rem;border-color:#78685a}
.result-count{color:var(--muted);margin:14px 0}
.project-index{grid-template-columns:repeat(3,minmax(0,1fr))}
.project-index .card-visual{height:clamp(185px,16vw,245px)}
.project-index .cal-graphic{transform:rotate(-4deg) scale(.93)}
.project-index .money-graphic{transform:rotate(4deg) scale(.82)}
.project-index .money-chart{height:49px}
.project-index :is(.visual-archivo,.visual-jaque,.visual-tigre)>b{font-size:clamp(1.75rem,3.2vw,4.2rem);max-width:100%;text-wrap:balance}
.project-index .card-content{padding:19px}
.project-index .card-content h3{font-size:clamp(1.7rem,2.65vw,2.8rem)}
.project-index .card-content p{font-size:.9rem}
.project-index .card-arrow{width:30px;height:30px;flex-basis:30px}
.empty-results{border:1px solid var(--line);padding:30px}
.empty-results p{margin:8px 0 16px;color:var(--muted)}
.studio-frame .frame-image{aspect-ratio:3.1;object-position:50% 50%}
.studio-frame .frame-image img{object-position:50% 43%}
.history{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.history article{padding:23px 23px 23px 0;min-width:0}
.history article+article{padding-left:23px;border-left:1px solid var(--line)}
.history h3{font:700 clamp(1.7rem,3vw,2.9rem)/1 var(--display);letter-spacing:-.06em;margin:11px 0}
.history p,.fineprint{color:var(--muted);line-height:1.65}
.experience{background:linear-gradient(120deg,#2d211be6,#1b1815b8 76%);border-block:1px solid var(--line);margin-bottom:clamp(34px,6vw,72px)}
.experience-list{list-style:none;margin:24px 0 15px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.experience-list li{min-height:94px;display:grid;place-items:center;text-align:center;padding:12px 8px;border:1px solid var(--line);font:700 clamp(1.2rem,3vw,2.45rem)/1 var(--display);letter-spacing:-.055em;color:#e1d9ce}
.fineprint{font-size:.86rem}
.studio-purpose{position:relative;padding:clamp(22px,4vw,52px);border:1px solid #5b463b;
  background:radial-gradient(ellipse at 5% 8%,#6b372c65,transparent 65%),#1d1817d6}
.studio-purpose .section-head{margin-bottom:24px}
.purpose-note{display:grid;grid-template-columns:minmax(140px,.42fr) 1fr;gap:10px 26px;align-items:baseline;padding-top:18px;border-top:1px solid #ad88764a}
.purpose-note p{max-width:62ch;color:var(--muted)}
.back-link{display:block;width:max-content;color:var(--muted);text-decoration:none;margin-bottom:24px;font-size:.9rem}
.back-link:hover{color:var(--accent)}
.product-detail-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px}
.product-detail-kicker .back-link{display:inline-flex;align-items:center;min-height:44px;margin:0}
.detail-cover .card-visual{height:clamp(210px,30vw,420px);padding:24px 30px}
.detail-grid{display:grid;grid-template-columns:minmax(195px,.34fr) 1fr;gap:65px}
.facts{border-top:1px solid var(--line);align-self:start}
.facts .eyebrow{padding:16px 0 10px}
.facts>div{display:grid;gap:3px;padding:11px 0;border-bottom:1px solid var(--line)}
.facts>div span{font-size:.82rem;color:var(--muted)}
.facts>div strong{font-size:.94rem}
.detail-body{display:grid;gap:26px}
.detail-body,.facts{min-width:0;overflow-wrap:anywhere}
.detail-body section{border-top:1px solid var(--line);padding-top:17px}
.detail-body h2{font-size:clamp(1.8rem,3.15vw,3rem);margin-bottom:10px}
.detail-body p{font-size:1.05rem;max-width:64ch}
.product-heading{display:flex;align-items:center;gap:clamp(10px,1.5vw,24px)}
.product-icon{width:clamp(42px,5.8vw,76px);height:auto;aspect-ratio:1;flex:none;border:1px solid #4d433b;border-radius:20%}
.product-modules{border-block:1px solid var(--line);padding:16px 0}
.product-modules ul{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}
.product-modules a{display:flex;align-items:center;min-height:44px;height:100%;padding:6px 10px;
  border:1px solid var(--line);background:#1d1918b8;color:var(--ink);font-size:.85rem;line-height:1.35;text-decoration:none}
.product-modules a:hover,.product-modules a:focus-visible{border-color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.detail-body section[id]{scroll-margin-top:16px}
.money-detail{display:grid;gap:10px}
.money-detail>div{padding:13px;border:1px solid #4f755e;background:#203329;display:flex;flex-wrap:wrap;gap:5px 12px;align-items:center;justify-content:space-between}
.money-detail dt{color:#c3dacb}
.money-detail dd{color:#b4efc7;margin-inline-start:auto;text-align:end}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.contact-card,.contact-form{padding:25px;border:1px solid var(--line);background:var(--panel)}
.contact-card h2{font-size:clamp(2.2rem,4.5vw,4.3rem);margin:9px 0 14px}
.email-link{display:inline-block;color:var(--accent);font-family:var(--display);font-weight:700;font-size:clamp(1.15rem,2.5vw,1.75rem);overflow-wrap:anywhere}
.contact-card p{margin:20px 0 12px}
.contact-form{display:grid;gap:12px}
.contact-form label{display:grid;gap:5px;color:var(--ink);font-size:.9rem}
.contact-form textarea{resize:vertical}
.contact-form .button{width:max-content}
.contact-form p{color:var(--muted);font-size:.82rem}
.contact-form p a,.legal-content p a{text-underline-offset:3px;color:var(--ink)}
.legal-content{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.legal-content address{margin-top:12px;font-size:.9rem;font-style:normal;color:var(--muted)}
.legal-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;max-width:680px}
.legal-links>div{display:flex;flex-wrap:wrap;align-content:start;gap:8px}
[data-contact-status]:empty{display:none}

@media(max-width:1100px){
  .shell{width:min(100% - 60px,1376px)}
  .hero{gap:34px;min-height:530px}
  .hero h1{font-size:clamp(3.55rem,8vw,6.3rem)}
  .section{padding-block:76px}
  .project-index .card-content{min-height:173px}
  .product-grid .money-chart{height:49px}
  .product-grid .visual-rush>.cal-graphic{transform:rotate(-4deg) scale(.94)}
  .product-grid .visual-rein>.money-graphic{transform:rotate(4deg) scale(.85)}
}
@media(min-width:801px) and (max-height:940px){
  .products-intro,.product-detail-intro{padding-block:46px 24px}
  .products-intro h1,.product-detail-intro h1{margin-block:14px 18px}
  .products-intro{padding-bottom:12px}
  .products-intro h1{margin-bottom:14px}
  .products-list .card-visual{height:clamp(220px,28vh,270px)}
  .products-list .card-content{min-height:0;padding-block:16px}
  .products-list .visual-rein>.money-graphic{transform:rotate(4deg) scale(.86)}
  .product-detail-intro .link-row{margin-top:18px}
  .product-detail-demo .demo-panel{padding-block:28px}
  .projects-intro{padding-block:36px 20px}
  .projects-intro h1{font-size:clamp(3.5rem,5.5vw,6rem);margin-block:12px 14px}
  [data-project-index] .filter-bar{padding-block:10px}
  [data-project-index] .result-count{margin-block:10px}
  .project-index .card-visual{height:clamp(185px,24vh,218px)}
  .project-index .card-content{min-height:0;padding-block:15px}
}
@media(max-width:960px){
  html{--header-height:67px}
  .nav-shell{grid-template-columns:minmax(0,1fr) auto;gap:12px}
  .nav-desktop,.nav-tools{display:none}
  .nav-mobile{display:block}
  .nav-mobile summary{list-style:none;min-height:44px;display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:7px 12px;cursor:pointer;background:#211b17}
  .nav-mobile summary::-webkit-details-marker{display:none}
  .nav-mobile summary span{color:var(--accent);width:1ch;text-align:center}
  .nav-mobile summary span::before{content:"+"}
  .nav-mobile[open] summary{border-color:var(--accent)}
  .nav-mobile[open] summary span::before{content:"−"}
  .nav-popover{position:absolute;top:calc(100% + 6px);right:16px;width:min(288px,calc(100% - 32px));padding:8px;
    max-height:calc(100dvh - var(--header-height) - 14px);overflow:auto;background:#24201d;border:1px solid #5b463b;box-shadow:0 16px 28px #100b09b3}
  .nav-mobile nav a{min-height:48px;display:flex;align-items:center;padding-inline:12px;border-inline-start:2px solid transparent}
  .nav-mobile nav a:is([aria-current=page],[data-current-section]){border-inline-start-color:var(--accent);background:#30241e}
  .nav-mobile nav .nav-mobile-contact{justify-content:space-between;color:var(--ink)}
  .nav-mobile-contact span{color:var(--accent)}
  .nav-popover .nav-preferences{justify-content:space-between;gap:4px;margin-top:8px;padding:8px 0 4px;border-top:1px solid var(--line)}
  .nav-popover .preference-control svg{width:16px;height:16px}
  .nav-popover .nav-preferences select{font-size:1rem}
}
@media(max-width:800px){
  .shell{width:calc(100% - 40px)}
  .products-list .card-visual{height:205px}
  .hero{min-height:0;grid-template-columns:1fr;gap:30px;padding-block:42px 32px}
  .hero h1{font-size:clamp(4rem,12.7vw,7rem);max-width:9ch;margin-top:17px;margin-bottom:20px}
  .hero h1 br{display:none}
  .hero-frame .frame-image{aspect-ratio:1.65}
  .signal-strip .shell{flex-wrap:wrap;justify-content:flex-start;gap:8px 16px;padding-block:11px}
  .signal-strip .live{margin-left:auto}
  .section-head{grid-template-columns:1fr}
  .section-head p{justify-self:start}
  .demo-tabs button{padding-inline:10px;text-align:center}
  .demo-tabs button span{display:none}
  .demo-panel{gap:20px;padding:24px}
  .detail-grid{gap:30px}
  .product-modules ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .footer-contact{justify-self:start;grid-column:1/-1}
}
@media(min-width:561px) and (max-width:1024px){
  .project-index{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-index .card-visual{height:clamp(205px,23vw,245px)}
  .project-index .card-content{min-height:0}
}
@media(max-width:560px){
  .shell{width:calc(100% - 32px)}
  .brand{font-size:22px}
  .brand .mark{width:57px;height:30px}
  .hero{padding-top:34px;gap:24px}
  .hero h1{font-size:clamp(3.4rem,14.3vw,5.3rem)}
  .hero-actions,.link-row{gap:8px;margin-top:20px}
  .button{min-height:44px;padding:9px 10px;font-size:.83rem}
  .button span{font-size:1rem}
  .hero-frame{padding:6px}
  .hero-frame figcaption,.frame-top{font-size:.56rem}
  .signal-strip .shell{gap:8px 11px;font-size:.57rem}
  .signal-strip .live{margin-left:0}
  .section{padding-block:56px}
  .section-tight{padding-bottom:49px}
  .section-head{margin-bottom:23px}
  .section-head h2{font-size:clamp(2.5rem,12vw,3.6rem)}
  .card-grid,.project-index,.contact-layout{grid-template-columns:1fr;gap:13px}
  .card-visual,.project-index .card-visual{height:205px}
  .card-content,.project-index .card-content{min-height:0;padding:16px}
  .card-content h3,.project-index .card-content h3{font-size:2rem}
  .workflow .demo-top{padding:10px;letter-spacing:.07em}
  .demo-tabs button{min-height:46px;padding:8px 6px;font-size:.83rem}
  .demo-panel{grid-template-columns:minmax(0,1fr);align-content:start;gap:17px;padding:17px}
  .demo-panel p{min-height:0}
  .demo-panel h3{font-size:2rem}
  .demo-data{margin-top:12px;gap:15px}
  .demo-visual .cal-graphic,.demo-visual .delivery-graphic{padding:12px}
  .shot-overlay{flex-wrap:wrap;gap:4px 8px}
  .callout{display:grid;justify-items:start;gap:15px;padding:20px;margin-bottom:53px}
  .page-intro{padding-top:42px;padding-bottom:30px}
  .product-detail-intro{padding-top:22px}
  .page-intro h1{font-size:clamp(3.1rem,13vw,4.65rem)}
  .filter-bar{display:grid;gap:10px}
  .project-search{max-width:none}
  .filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .filters button{padding-inline:6px}
  .split-note{align-items:start;flex-direction:column}
  .demo-directory,.legal-links{grid-template-columns:minmax(0,1fr)}
  .studio-frame .frame-image{aspect-ratio:1.6}
  .purpose-note{grid-template-columns:1fr}
  .history,.detail-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .detail-body h2,.product-modules a,.demo-tabs button{hyphens:auto}
  .history article,.history article+article{padding:16px 0;border-left:0}
  .history article+article{border-top:1px solid var(--line)}
  .experience{margin-bottom:52px}
  .experience-list{grid-template-columns:repeat(2,1fr)}
  .experience-list li{min-height:65px}
  .detail-grid{gap:29px}
  .footer-main{grid-template-columns:1fr;gap:22px;padding-block:26px}
  .footer-bottom{flex-wrap:wrap}
  .footer-legal{order:1;width:100%}
  .footer-nav>div{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}
  .footer-contact{width:100%}
  .contact-form,.contact-card{padding:16px}
}
@media(max-width:380px){
  .finance-demo [data-tab-demo][data-ready]>.demo-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media(max-width:380px){
  .nav-shell .brand{gap:7px;font-size:20px}
  .nav-shell .brand .mark{width:52px}
  .nav-mobile summary{gap:8px;padding-inline:10px}
}
