/* Home page, laid out like runway.com: inset video card, partner strip, big centred heading, four label/media/headline columns,
   tabbed feature panel, dark rounded band, news-style rows, black footer. Everything inside one container with equal padding. */
html.t-runway .rwh-wrap{ width:100%; max-width:var(--rw-wrap,1280px); margin:0 auto; padding:0 var(--rw-gut); box-sizing:border-box; }
html.t-runway .rwh-narrow{ max-width:900px; }
html.t-runway .rwh-sec{ padding:clamp(40px,6vw,88px) 0; background:#fff; color:#0c0c0c; }
html.t-runway .rwh-small{ margin:0 0 8px; font-size:14px; font-weight:500; color:var(--rw-mid); }
html.t-runway .rwh-big{ margin:0 auto clamp(32px,4vw,56px); max-width:20ch; text-align:center; font-weight:400; letter-spacing:-.035em; line-height:1.08; font-size:clamp(30px,3.6vw,52px); text-wrap:balance; }
html.t-runway .rwh-left{ margin:0 0 clamp(20px,2.4vw,32px); text-align:left; font-weight:400; letter-spacing:-.03em; line-height:1.1; font-size:clamp(26px,2.6vw,38px); }
html.t-runway .rwh-more{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin:clamp(20px,2.4vw,28px) 0 0; }
html.t-runway .rwh-learn{ display:inline-flex; align-items:center; gap:6px; margin-top:auto; padding-top:16px; font-size:14px; font-weight:500; color:#0c0c0c; }
html.t-runway .rwh-arr{ flex:none; }

/* hero card: text bottom-left */
html.t-runway .rwh-hero{ margin:calc(var(--hdr,56px) + 8px) 8px 0; min-height:min(60svh,560px); align-items:flex-end; justify-content:flex-start; border-radius:12px; }
html.t-runway .rwh-hero .pghero-in{ max-width:none; margin:0; padding:clamp(24px,3vw,44px); align-items:flex-start; text-align:left; width:100%; }
html.t-runway .rwh-hero h1{ margin:0 0 12px; max-width:none; font-size:clamp(26px,2.8vw,40px); font-weight:450; letter-spacing:-.03em; line-height:1.1; text-wrap:balance; }
html.t-runway .rwh-hero .pghero-sub{ margin:0 0 20px; max-width:56ch; font-size:clamp(15px,1.2vw,18px); line-height:1.45; text-align:left; }
html.t-runway .rwh-hero .pghero-cta{ justify-content:flex-start; margin:0; }
html.t-runway .rw-pause{ right:16px; bottom:16px; }

/* partners */
html.t-runway .rwh-partners{ padding:clamp(28px,3.4vw,48px) var(--rw-gut) 0; text-align:center; background:#fff; }
html.t-runway .rwh-partners p{ margin:0 0 20px; font-size:14px; color:var(--rw-mid); }
html.t-runway .rwh-partners ul{ display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:20px clamp(24px,4vw,56px); margin:0 auto; padding:0; list-style:none; max-width:var(--rw-wrap,1280px); }
html.t-runway .rwh-partners img{ height:26px; width:auto; max-width:120px; object-fit:contain; filter:grayscale(1) contrast(.9); opacity:.7; }

/* four columns */
html.t-runway .rwh-grid4{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(24px,2.4vw,36px) clamp(16px,1.6vw,24px); }
html.t-runway .rwh-card{ display:flex; flex-direction:column; min-width:0; }
html.t-runway .rwh-label{ margin:0 0 12px; font-size:17px; font-weight:500; letter-spacing:-.015em; color:#0c0c0c; text-align:left; }
html.t-runway .rwh-media{ position:relative; display:block; aspect-ratio:4/3; border-radius:10px; overflow:hidden; background:#000; }
html.t-runway .rwh-media img, html.t-runway .rwh-media video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(.88); }
html.t-runway .rwh-card h3{ margin:20px 0 8px; font-size:clamp(18px,1.5vw,21px); font-weight:450; letter-spacing:-.02em; line-height:1.2; color:#0c0c0c; }
html.t-runway .rwh-card > p:not(.rwh-label){ margin:0; font-size:14.5px; line-height:1.5; color:#5f6772; }
html.t-runway .rwh-btns{ display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
html.t-runway .rwh-btns .pill{ height:34px; padding:0 12px; font-size:13px; border-radius:6px; }

/* tabs + feature panel */
html.t-runway .rwh-tabsec{ padding-top:clamp(24px,4vw,48px); }
html.t-runway .rwh-tabs{ display:flex; align-items:center; gap:16px; margin-bottom:20px; }
html.t-runway .rwh-tabs button{ appearance:none; border:0; background:none; padding:6px 0; font:inherit; font-size:clamp(15px,1.3vw,19px); font-weight:500; letter-spacing:-.015em; color:#9aa1ab; cursor:pointer; min-height:44px; }
html.t-runway .rwh-tabs button[aria-selected="true"]{ color:#0c0c0c; }
html.t-runway .rwh-tabs button:hover{ color:#0c0c0c; }
html.t-runway .rwh-tabs::before, html.t-runway .rwh-tabs button + button::before{ content:""; flex:1 1 24px; height:1px; background:#dfe3e8; }
html.t-runway .rwh-tabs{ position:relative; }
html.t-runway .rwh-tabs button + button{ display:flex; align-items:center; gap:16px; }
html.t-runway .rwh-tabs button + button::before{ min-width:clamp(24px,8vw,120px); }
html.t-runway .rwh-tabs::before{ display:none; }
html.t-runway .rwh-panel{ border:1px solid #e3e6ea; border-radius:16px; padding:clamp(20px,3vw,40px); background:#fff; }
html.t-runway .rwh-panel[hidden]{ display:none; }
html.t-runway .rwh-panel-head{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:24px clamp(24px,5vw,72px); align-items:start; margin-bottom:clamp(24px,3vw,40px); }
html.t-runway .rwh-panel-head h3{ margin:0; font-size:clamp(24px,2.4vw,34px); font-weight:400; letter-spacing:-.03em; line-height:1.12; color:#0c0c0c; }
html.t-runway .rwh-panel-head > p{ margin:0; font-size:15.5px; line-height:1.55; color:#5f6772; }
html.t-runway .rwh-feats{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
html.t-runway .rwh-feat{ display:flex; flex-direction:column; min-height:176px; padding:clamp(16px,1.8vw,24px); border:1px solid #e3e6ea; border-radius:12px; background:#fff; color:#0c0c0c; text-decoration:none; box-sizing:border-box; }
html.t-runway .rwh-feat:hover{ border-color:#0c0c0c; }
html.t-runway .rwh-feat .rwh-ico{ width:36px; height:36px; padding:8px; border-radius:8px; background:#f1f3f6; color:#0c0c0c; margin-bottom:18px; box-sizing:border-box; }
html.t-runway .rwh-feat h4{ margin:0 0 6px; font-size:18px; font-weight:450; letter-spacing:-.015em; }
html.t-runway .rwh-feat p{ margin:0; font-size:14.5px; line-height:1.45; color:#5f6772; }
html.t-runway .rwh-panel-more{ margin:20px 0 0; }

/* dark rounded band */
html.t-runway .rwh-band{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:clamp(24px,5vw,72px); align-items:center; padding:clamp(28px,5vw,72px); border-radius:16px; background:#0b1210 linear-gradient(120deg,#17261f 0%,#0a0f0d 60%); color:#fff; box-sizing:border-box; }
html.t-runway .rwh-band h2{ margin:0 0 24px; font-size:clamp(20px,1.9vw,28px); font-weight:400; line-height:1.3; letter-spacing:-.02em; color:#fff; }
html.t-runway .rwh-band .rwh-small{ color:rgba(255,255,255,.7); }
html.t-runway .rwh-band .pill.is-ghost{ background:transparent; border:1px solid #fff; color:#fff; -webkit-text-fill-color:#fff; height:36px; font-size:14px; padding:0 14px; border-radius:6px; }
html.t-runway .rwh-band .pill.is-ghost:hover{ background:#fff; color:#000; -webkit-text-fill-color:#000; }
html.t-runway .rwh-band-r{ margin:0; padding:0; list-style:none; }
html.t-runway .rwh-band-r li{ border-top:1px solid rgba(255,255,255,.7); }
html.t-runway .rwh-band-r li:last-child{ border-bottom:1px solid rgba(255,255,255,.7); }
html.t-runway .rwh-band-r a{ position:relative; display:block; padding:18px 36px 18px 0; color:#fff; text-decoration:none; }
html.t-runway .rwh-band-r b{ display:block; font-size:18px; font-weight:450; letter-spacing:-.01em; }
html.t-runway .rwh-band-r span{ display:block; margin-top:4px; font-size:14px; color:rgba(255,255,255,.72); }
html.t-runway .rwh-band-r svg{ position:absolute; right:0; top:50%; transform:translateY(-50%); }
html.t-runway .rwh-cta{ grid-template-columns:1fr; justify-items:center; text-align:center; }
html.t-runway .rwh-cta h2{ font-size:clamp(26px,3vw,44px); margin:0 0 12px; }
html.t-runway .rwh-cta p{ margin:0; max-width:56ch; font-size:17px; line-height:1.5; color:rgba(255,255,255,.8); }
html.t-runway .rwh-recog{ margin-top:clamp(32px,4vw,56px); }
html.t-runway .rwh-recog .tr-block{ margin-top:24px; text-align:center; }
html.t-runway .rwh-recog .tr-label{ font-size:15px; font-weight:500; margin:0 0 16px; color:#0c0c0c; }
html.t-runway .rwh-recog .recog, html.t-runway .rwh-recog .tr-fw{ display:flex; flex-wrap:wrap; gap:20px 32px; justify-content:center; align-items:flex-start; margin:0; padding:0; list-style:none; }
html.t-runway .rwh-recog .recog li{ flex:1 1 220px; max-width:280px; }
html.t-runway .rwh-recog .recog img{ height:30px; width:auto; max-width:100%; margin:0 auto 10px; display:block; }
html.t-runway .rwh-recog .tr-fw img{ height:44px; width:auto; }
html.t-runway .rwh-recog .recog p{ font-size:14px; color:#5f6772; margin:0; }
html.t-runway .rwh-recog .b-note{ max-width:70ch; margin:20px auto 0; font-size:13px; line-height:1.5; color:var(--rw-mid); text-align:center; }

/* news-style agent rows */
html.t-runway .rwh-newsgrid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px clamp(24px,3vw,40px); margin:0; padding:0; list-style:none; }
html.t-runway .rwh-news{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1fr); gap:16px; align-items:start; color:#0c0c0c; text-decoration:none; height:100%; }
html.t-runway .rwh-news img{ width:100%; aspect-ratio:16/10; height:auto; object-fit:cover; border-radius:8px; background:#eef0f3; display:block; }
html.t-runway .rwh-news > div{ display:flex; flex-direction:column; height:100%; }
html.t-runway .rwh-news h3{ margin:0 0 6px; font-size:18px; font-weight:450; letter-spacing:-.015em; line-height:1.2; }
html.t-runway .rwh-news p{ margin:0; font-size:14px; line-height:1.45; color:#5f6772; }
html.t-runway .rwh-news:hover h3{ text-decoration:underline; }

/* sector tiles */
html.t-runway .rwh-tiles{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0; padding:0; list-style:none; }
html.t-runway .rwh-tile{ display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:24px; min-height:120px; padding:18px; border:1px solid #e3e6ea; border-radius:12px; background:#fff; color:#0c0c0c; text-decoration:none; box-sizing:border-box; height:100%; }
html.t-runway a.rwh-tile:hover{ border-color:#0c0c0c; }
html.t-runway .rwh-tile span{ font-size:17px; font-weight:450; letter-spacing:-.015em; line-height:1.2; }
html.t-runway .rwh-ico{ width:40px; height:40px; padding:9px; box-sizing:border-box; border-radius:8px; background:#f1f3f6; color:#0c0c0c; flex:none; }
html.t-runway .rwh-sector{ background:#fff; }
html.t-runway .faqh{ background:#fff; }
html.t-runway .rwh-close{ padding-top:0; }

@media (max-width:1100px){ html.t-runway .rwh-grid4{ grid-template-columns:repeat(2,minmax(0,1fr)); } html.t-runway .rwh-tiles{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:820px){
  html.t-runway .rwh-panel-head, html.t-runway .rwh-band{ grid-template-columns:1fr; }
  html.t-runway .rwh-feats, html.t-runway .rwh-newsgrid{ grid-template-columns:1fr; }
  html.t-runway .rwh-tiles{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  html.t-runway .rwh-tabs{ overflow-x:auto; }
}
@media (max-width:560px){ html.t-runway .rwh-grid4{ grid-template-columns:1fr; } html.t-runway .rwh-news{ grid-template-columns:1fr; } html.t-runway .rwh-tiles{ gap:12px; } html.t-runway .rwh-tile{ min-height:104px; padding:14px; } html.t-runway .rwh-tile span{ font-size:15px; } }

/* the theme's generic [class*="-panel"] surface rule must not box the tab panel's inner parts */
html.t-runway .rwh-panel{ background:#fff !important; border:1px solid #e3e6ea !important; border-radius:16px !important; }
html.t-runway .rwh-panel-head, html.t-runway .rwh-panel-more{ background:none !important; border:0 !important; border-radius:0 !important; padding:0; }
html.t-runway .rwh-panel-head{ margin-bottom:clamp(24px,3vw,40px); }
html.t-runway .rwh-tabsec{ padding-bottom:clamp(24px,3vw,40px); }
html.t-runway .rwh-panels{ margin:0; }
html.t-runway .rwh-panels > .rwh-panel{ background:#fff !important; border:1px solid #e3e6ea !important; border-radius:16px !important; }
html.t-runway .rwh-panels > .rwh-panel > .rwh-panel-head, html.t-runway .rwh-panels > .rwh-panel > .rwh-panel-more{ background:none !important; border:0 !important; border-radius:0 !important; padding:0 !important; }
html.t-runway .rwh-panels > .rwh-panel > .rwh-panel-head{ margin-bottom:clamp(24px,3vw,40px); }
html.t-runway .rwh-sec{ padding:clamp(32px,4.6vw,64px) 0; }

/* ---- audit fixes (2026-10-08) ---- */
/* 1 partner logos: readable */
html.t-runway .rwh-partners img{ height:28px; max-width:130px; filter:grayscale(1); opacity:.85; }
/* 2 agent rows: icon thumbnails */
html.t-runway .rwh-thumb{ display:grid; place-items:center; aspect-ratio:16/10; border-radius:10px; background:#f1f3f6; color:#0c0c0c; }
html.t-runway .rwh-thumb .rwh-ico{ width:64px; height:64px; padding:14px; background:#fff; border:1px solid #e3e6ea; border-radius:14px; }
html.t-runway .rwh-news:hover .rwh-thumb{ background:#e9ecf2; }
/* 3 FAQ: full container, one column, questions wrap */
html.t-runway .faqh .faqh-grid{ display:block; columns:auto; }
html.t-runway .faqh .faqh-item{ padding:20px 4px; }
html.t-runway .faqh .faqh-item summary{ display:flex; justify-content:space-between; align-items:flex-start; gap:24px; white-space:normal; font-size:clamp(17px,1.4vw,20px); line-height:1.35; cursor:pointer; list-style:none; }
html.t-runway .faqh .faqh-item summary::-webkit-details-marker{ display:none; }
html.t-runway .faqh .faqh-item summary::after{ content:""; flex:none; width:9px; height:9px; margin-top:6px; border-right:1.8px solid currentColor; border-bottom:1.8px solid currentColor; transform:rotate(45deg); transition:transform .2s ease; }
html.t-runway .faqh .faqh-item[open] summary::after{ transform:rotate(-135deg); margin-top:10px; }
html.t-runway .faqh .faqh-item p{ max-width:70ch; margin:12px 0 0; font-size:16px; line-height:1.55; }
/* 4 recognition: uniform logo heights, readable note */
html.t-runway .rwh-recog .recog img{ height:28px; max-width:140px; object-fit:contain; }
html.t-runway .rwh-recog .tr-fw li{ display:grid; place-items:center; width:96px; height:56px; }
html.t-runway .rwh-recog .tr-fw img{ max-height:44px; max-width:96px; width:auto; height:auto; object-fit:contain; }
html.t-runway .rwh-recog .b-note{ font-size:14px; }
/* 5 sector tiles: icon beside label, no dead space */
html.t-runway .rwh-tile{ flex-direction:row; align-items:center; justify-content:flex-start; gap:14px; min-height:76px; padding:14px 16px; }
html.t-runway .rwh-tile .rwh-ico{ width:44px; height:44px; padding:10px; }
/* 6 tabs: equal columns, readable labels, one even rule */
html.t-runway .rwh-tabs{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
html.t-runway .rwh-tabs button, html.t-runway .rwh-tabs button + button{ display:block; text-align:left; padding:12px 0; border-bottom:2px solid #e3e6ea; color:#5f6772; }
html.t-runway .rwh-tabs button + button::before{ content:none; }
html.t-runway .rwh-tabs button[aria-selected="true"]{ color:#0c0c0c; border-bottom-color:#0c0c0c; }
/* 7 phones: shorter hero, tighter panel */
@media (max-width:720px){
  html.t-runway .rwh-hero{ min-height:0; padding-top:140px; }
  html.t-runway .rwh-tabs{ grid-template-columns:repeat(4,max-content); gap:20px; overflow-x:auto; }
  html.t-runway .rwh-feat{ min-height:0; }
  html.t-runway .rwh-band{ padding:24px; }
  html.t-runway .rwh-news{ grid-template-columns:96px 1fr; }
  html.t-runway .rwh-thumb{ aspect-ratio:1; }
  html.t-runway .rwh-thumb .rwh-ico{ width:44px; height:44px; padding:10px; }
}
/* partner logos: some source files are white artwork, so render every mark as a uniform dark silhouette */
html.t-runway .rwh-partners img{ filter:brightness(0); opacity:.55; }
/* cta band: tighter rhythm */
html.t-runway .rwh-cta h2{ margin:0 0 10px; }
html.t-runway .rwh-cta .rwh-more{ margin-top:20px; }

/* four service columns: rows line up across cards (label, media, heading, text, buttons) and buttons sit on one baseline */
@supports (grid-template-rows: subgrid){
  html.t-runway .rwh-grid4{ grid-template-rows:auto auto auto 1fr auto; row-gap:0; }
  html.t-runway .rwh-grid4 .rwh-card{ display:grid; grid-row:span 5; grid-template-rows:subgrid; }
}
html.t-runway .rwh-grid4 .rwh-card .rwh-btns{ margin-top:20px; align-self:end; flex-wrap:nowrap; }
html.t-runway .rwh-grid4 .rwh-card .rwh-btns .pill{ white-space:nowrap; }
@media (max-width:1100px){ html.t-runway .rwh-grid4{ row-gap:clamp(24px,2.4vw,36px); } }
/* buttons inside bands always fit: wrap on narrow screens */
html.t-runway .rwh-band .rwh-more{ flex-wrap:wrap; max-width:100%; box-sizing:border-box; }
@media (max-width:480px){ html.t-runway .rwh-band .rwh-more .pill{ flex:1 1 100%; justify-content:center; } }

/* ecosystem: drifting logo rows (owner loved the live site's rows), larger marks, names beside small icons */
html.t-runway .rwh-eco{ padding:clamp(40px,5vw,72px) 0 clamp(24px,3vw,40px); background:#fff; }
html.t-runway .rwh-eco-h{ max-width:24ch; }
html.t-runway .rwh-eco-rows{ display:grid; gap:14px; overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
html.t-runway .rwh-eco-row{ display:flex; width:max-content; animation:rwh-drift 60s linear infinite; }
html.t-runway .rwh-eco-row.is-rev{ animation-direction:reverse; animation-duration:70s; }
html.t-runway .rwh-eco-rows:hover .rwh-eco-row{ animation-play-state:paused; }
html.t-runway .rwh-eco-row ul{ display:flex; gap:14px; margin:0; padding:0 7px; list-style:none; }
html.t-runway .rwh-eco-row li, html.t-runway .rwh-models li{ display:flex; align-items:center; gap:10px; height:76px; padding:0 26px; border:1px solid #e3e6ea; border-radius:14px; background:#fff; white-space:nowrap; font-size:17px; font-weight:500; letter-spacing:-.01em; color:#0c0c0c; }
html.t-runway .rwh-eco-row li.is-word img{ height:32px; width:auto; max-width:150px; object-fit:contain; }
html.t-runway .rwh-eco-row li.is-mark img, html.t-runway .rwh-models li img{ height:28px; width:28px; object-fit:contain; }
html.t-runway .rwh-eco-row li.is-text{ color:#4d5560; }
html.t-runway .rwh-eco-sub{ margin:clamp(28px,3vw,40px) 0 14px; }
html.t-runway .rwh-models{ display:flex; flex-wrap:wrap; gap:14px; margin:0; padding:0; list-style:none; }
html.t-runway .rwh-models li{ height:68px; }
@keyframes rwh-drift{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){
  html.t-runway .rwh-eco-row{ animation:none; width:auto; }
  html.t-runway .rwh-eco-row ul[aria-hidden]{ display:none; }
  html.t-runway .rwh-eco-row ul{ flex-wrap:wrap; justify-content:center; }
  html.t-runway .rwh-eco-rows{ -webkit-mask-image:none; mask-image:none; padding:0 var(--rw-gut); }
}
@media (max-width:720px){
  html.t-runway .rwh-eco-row li, html.t-runway .rwh-models li{ height:60px; padding:0 18px; font-size:15px; }
  html.t-runway .rwh-eco-row li.is-word img{ height:26px; }
}
