/* Public project overviews. Shared geometry and palette with the Miami Fuego site. */
.mf-info { background:var(--bg); color:var(--ink); }
.mf-info main { max-width:1440px; margin:auto; }
.mf-info h1 { font-size:clamp(66px,7.4vw,106px); line-height:.94; letter-spacing:-.035em; }
.mf-info h2 { font-size:clamp(36px,4vw,52px); }
.mf-info h3 { font-size:30px; line-height:1.05; }
.mf-info p { line-height:1.65; }
.mf-detail-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:64px; align-items:center; padding:64px; }
.mf-detail-copy { min-width:0; }
.mf-detail-back { display:inline-block; font-size:13px; padding:6px 0; margin-bottom:22px; color:var(--muted); text-decoration:underline; text-underline-offset:4px; }
.mf-detail-copy h1 { max-width:720px; margin:18px 0 24px; }
.mf-detail-copy .mf-eyebrow { margin-bottom:14px; }
.mf-detail-copy .mf-intro { max-width:560px; margin-top:24px; font-size:21px; }
.mf-detail-copy > p:not(.mf-eyebrow):not(.mf-intro) { max-width:580px; color:var(--muted); margin-top:22px; font-size:17px; }
.mf-detail-copy .mf-actions { margin-top:28px; }
.mf-project-status { display:inline-flex; align-items:center; min-height:30px; padding:6px 10px; border:1px solid var(--red); border-radius:3px; color:var(--red); font-size:12px; line-height:1.2; font-weight:600; letter-spacing:.02em; }
.mf-detail-visual { position:relative; min-width:0; min-height:380px; margin:0; background:var(--mf-frame); color:var(--mf-frame-ink); border-radius:var(--mf-radius); overflow:hidden; }
.mf-detail-visual > img { width:100%; height:390px; object-fit:contain; padding:28px; }
.mf-detail-visual > figcaption { padding:0 28px 22px; font-size:12px; }
.mf-concept-illustration { min-height:300px; display:flex; align-items:center; padding:36px; }
.mf-concept-illustration p { margin:0; font-family:'Barlow Condensed',sans-serif; font-size:clamp(38px,5vw,64px); font-weight:700; line-height:1.05; max-width:10ch; }
.mf-signal-illustration { min-height:410px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:36px; text-align:center; }
.mf-signal-circle { display:grid; place-items:center; width:210px; height:210px; border-radius:50%; background:var(--lime); color:var(--bg); font-size:70px; line-height:1; border:2px solid currentColor; }
.mf-signal-caption { margin-top:26px; font:600 36px/1.1 'Barlow Condensed',sans-serif; letter-spacing:-.02em; }
.mf-signal-illustration small { display:block; margin-top:13px; font-size:12px; }
.mf-between-illustration { min-height:410px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:36px; text-align:center; }
.mf-between-rings { position:relative; height:180px; width:260px; max-width:100%; margin-bottom:22px; }
.mf-between-ring { display:block; position:absolute; width:168px; height:168px; border:2px solid currentColor; border-radius:50%; top:6px; }
.mf-between-ring:first-child { left:0; }
.mf-between-ring:last-child { right:0; background:var(--mf-frame-ink); opacity:.16; }
.mf-between-illustration > strong, .mf-between-illustration > p { margin-top:20px; font:600 38px/1.1 'Barlow Condensed',sans-serif; }
.mf-between-illustration small { display:block; margin-top:13px; font-size:12px; }
.mf-info-section { padding:48px 64px 56px; border-top:1px solid var(--line); }
.mf-info-section > p { max-width:700px; color:var(--muted); margin:22px 0; font-size:18px; }
.mf-info-section .mf-eyebrow { margin:0 0 14px; font-size:12px; }
.mf-apps-intro { padding-top:58px; padding-bottom:48px; border-top:0; }
.mf-apps-intro .mf-intro { max-width:620px; }
.mf-info-next { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.mf-info-next > div:last-child { max-width:500px; padding-top:6px; }
.mf-info-next > div:last-child > p { color:var(--muted); margin-bottom:22px; font-size:17px; }
.mf-detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:30px; }
.mf-detail-grid:has(> :last-child:nth-child(2)) { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mf-detail-note { min-width:0; padding:24px 0 8px; border-top:2px solid var(--red); }
.mf-detail-note h3 { margin-bottom:16px; }
.mf-detail-note p { color:var(--muted); font-size:16px; max-width:440px; }
.mf-detail-note a { display:inline-block; margin-top:20px; padding:8px 0; font-weight:600; font-size:15px; text-decoration:underline; text-underline-offset:4px; }
.mf-info-note { padding:22px 26px; border-left:3px solid var(--red); background:var(--surface); color:var(--muted); margin-top:28px; max-width:800px; }
.mf-info-note p { margin:0; font-size:16px; }
.mf-app-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:30px; }
.mf-app-card { min-width:0; display:flex; flex-direction:column; padding:30px; border:1px solid var(--line); background:var(--surface); }
.mf-app-card .mf-project-status { align-self:flex-start; }
.mf-app-card h2, .mf-app-card h3 { font:700 48px/1.03 'Barlow Condensed',sans-serif; letter-spacing:-.02em; margin:26px 0 18px; }
.mf-app-card p { color:var(--muted); font-size:17px; margin-bottom:24px; max-width:500px; }
.mf-app-card > a { margin-top:auto; align-self:flex-start; min-height:44px; padding:12px 0; font-size:15px; font-weight:600; text-decoration:underline; text-underline-offset:5px; }
.mf-app-card small { color:var(--muted); font-size:12px; }
.mf-app-card[data-category=Apps] { border-top:3px solid var(--red); }
.mf-app-card[data-category=Tools] { border-top:3px solid var(--blue); }
.mf-entertainment-intro { background:var(--surface); }
.mf-entertainment-intro > .mf-text-link { display:inline-block; padding:12px 0; margin-top:12px; }
.mf-entertainment-grid .mf-app-card { border-top:4px solid var(--red); }
.mf-entertainment-grid .mf-app-card:nth-child(even) { border-top-color:var(--blue); }
.mf-info .mf-directory-intro { align-items:flex-start; }
.mf-info .mf-directory-intro .mf-intro { max-width:620px; }
.mf-info .mf-directory-intro .mf-side-link { white-space:normal; max-width:300px; }
.mf-info .mf-project[data-category=Apps] { border-top:3px solid var(--red); }
.mf-info .mf-project a { min-height:44px; align-items:center; }
.mf-info .mf-info-footer { padding:36px 64px 48px; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:24px; justify-content:space-between; }
.mf-info .mf-info-footer a { padding:10px 0; font-weight:600; }
.mf-info .mf-status-description { display:block; font-size:13px; margin-top:14px; color:var(--muted); }
.mf-info .mf-breadcrumb { padding:30px 64px 0; color:var(--muted); font-size:13px; }
.mf-breadcrumb a { text-decoration:underline; text-underline-offset:4px; padding:8px 0; display:inline-block; }
.mf-info .mf-detail-hero:has(+ .mf-info-section) { padding-bottom:64px; }
@media(max-width:1000px) {
  .mf-detail-hero { gap:34px; padding:48px 32px; }
  .mf-detail-copy .mf-intro { font-size:19px; }
  .mf-detail-visual { min-height:330px; }
  .mf-signal-illustration,.mf-between-illustration { min-height:350px; padding:26px; }
  .mf-signal-circle { width:175px; height:175px; font-size:60px; }
  .mf-info-section { padding:40px 32px 48px; }
  .mf-info .mf-info-footer { padding:30px 32px 40px; }
  .mf-info .mf-breadcrumb { padding:24px 32px 0; }
  .mf-detail-grid { gap:20px; }
}
@media(max-width:700px) {
  .mf-info h1 { font-size:64px; }
  .mf-detail-hero { grid-template-columns:minmax(0,1fr); padding:34px 20px 42px; gap:32px; }
  .mf-detail-copy h1 { margin:18px 0 20px; }
  .mf-detail-copy .mf-intro { margin-top:20px; font-size:18px; }
  .mf-detail-copy > p:not(.mf-eyebrow):not(.mf-intro) { font-size:16px; }
  .mf-detail-copy .mf-actions { gap:14px 20px; }
  .mf-detail-visual { min-height:300px; }
  .mf-detail-visual > img { height:310px; padding:24px; }
  .mf-detail-visual > figcaption { padding:0 24px 20px; }
  .mf-signal-illustration,.mf-between-illustration { min-height:330px; padding:26px; }
  .mf-signal-caption { font-size:32px; }
  .mf-between-illustration > strong,.mf-between-illustration > p { font-size:34px; }
  .mf-between-rings { width:230px; height:155px; margin-bottom:16px; }
  .mf-between-ring { width:150px; height:150px; }
  .mf-info-section { padding:32px 20px 40px; }
  .mf-apps-intro { padding-top:38px; }
  .mf-info-next { grid-template-columns:minmax(0,1fr); gap:24px; }
  .mf-info-section > p { font-size:17px; }
  .mf-detail-grid,.mf-detail-grid:has(> :last-child:nth-child(2)),.mf-app-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
  .mf-detail-note { padding:22px 0 2px; }
  .mf-app-card { padding:24px; }
  .mf-app-card h2,.mf-app-card h3 { font-size:40px; }
  .mf-info-note { padding:20px; }
  .mf-info .mf-info-footer { padding:26px 20px 34px; }
  .mf-info .mf-breadcrumb { padding:20px 20px 0; }
  .mf-info .mf-detail-hero:has(+ .mf-info-section) { padding-bottom:42px; }
}
@media(max-width:380px) {
  .mf-info h1 { font-size:56px; }
  .mf-signal-circle { width:156px; height:156px; font-size:54px; }
}
