.fi{ max-width:1040px; margin:0 auto; padding:5vh 6vw 8vh; }
  .fi.inline{ padding:0; max-width:none; }
  .fi.inline h2:first-of-type{ margin-top:34px; }
  .fi-crumb{ font-size:.82rem; color:var(--muted); margin-bottom:22px; }
  .fi-crumb a{ color:var(--gold); } .fi-crumb a:hover{ color:var(--gold-bright); }
  .fi-top{ display:grid; grid-template-columns:minmax(0,380px) 1fr; gap:36px; align-items:start; }
  .fi-ph{ background:#ece6d8; border:1px solid var(--line); aspect-ratio:4/5; display:flex; align-items:center; justify-content:center; padding:14px; overflow:hidden; }
  .fi-ph img{ max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply; }
  .fi-tag{ display:inline-block; font-size:.78rem; border:1px solid var(--line); padding:2px 9px; color:var(--muted); margin-right:6px; }
  .fi-tag.ok{ color:var(--green); border-color:#3d5136; } .fi-tag.no{ color:#e0836f; border-color:var(--rust); }
  .fi .fi-title{ font-family:var(--font-display); font-weight:400; font-size:clamp(2rem,6vw,3.2rem); line-height:1.05; color:var(--beige); margin:12px 0 4px; letter-spacing:.01em; }
  .fi-insp{ color:var(--muted); font-size:.92rem; }
  .fi-rate{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:16px 0 4px; }
  .fi-stars{ font-size:1.25rem; letter-spacing:2px; line-height:1; color:transparent; -webkit-background-clip:text; background-clip:text;
    background-image:linear-gradient(90deg,var(--gold-bright) var(--p,0%),#3a342b var(--p,0%)); }
  .fi-rate b{ font-family:var(--font-display); font-weight:400; font-size:1.5rem; color:var(--gold-bright); }
  .fi-rate span.fi-nn{ color:var(--muted); font-size:.85rem; }
  .fi-rate a{ color:var(--gold); font-size:.85rem; border-bottom:1px dotted var(--gold); }
  .fi-cta{ display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
  .fi-btn{ display:inline-flex; align-items:center; gap:8px; padding:12px 18px; font-size:.9rem; border:1px solid var(--gold); color:#14110a; background:var(--gold); cursor:pointer; font-family:var(--font-mono); }
  .fi-btn:hover{ background:var(--gold-bright); border-color:var(--gold-bright); }
  .fi-btn.ghost{ background:transparent; color:var(--gold); } .fi-btn.ghost:hover{ background:rgba(201,162,75,.12); }
  .fi-btn[aria-disabled="true"]{ opacity:.45; pointer-events:none; }
  .fi-btn svg{ width:18px; height:18px; }
  .fi h2{ font-family:var(--font-display); font-weight:400; font-size:1.5rem; letter-spacing:.03em; color:var(--beige); margin:46px 0 16px; padding-bottom:10px; border-bottom:1px solid var(--line); }
  .fi-ico{ width:26px; height:26px; flex:none; stroke:var(--gold-bright); fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
  .fi-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:12px; }
  .fi-d{ display:flex; gap:12px; align-items:flex-start; background:var(--bg-panel); border:1px solid var(--line); padding:14px; }
  .fi-d small{ display:block; color:var(--muted); font-size:.74rem; letter-spacing:.08em; text-transform:uppercase; }
  .fi-d strong{ display:block; font-weight:500; color:var(--beige); font-size:.95rem; line-height:1.35; margin-top:2px; }
  .fi-d .fi-bar{ display:flex; gap:4px; margin-top:7px; } .fi-d .fi-bar i{ width:18px; height:5px; background:#3a342b; } .fi-d .fi-bar i.on{ background:var(--gold-bright); }
  .fi-pyr{ display:grid; gap:12px; }
  .fi-n{ display:grid; grid-template-columns:150px 1fr; gap:14px; align-items:start; background:var(--bg-panel); border:1px solid var(--line); padding:14px; }
  .fi-n .h{ display:flex; gap:10px; align-items:center; } .fi-n .h b{ display:block; font-weight:500; color:var(--beige); font-size:.9rem; } .fi-n .h small{ color:var(--muted); font-size:.74rem; }
  .fi-chips{ display:flex; flex-wrap:wrap; gap:7px; } .fi-chips span{ border:1px solid var(--line); padding:3px 10px; font-size:.84rem; color:var(--beige); background:#1d1913; }
  .fi-vacio{ color:var(--muted); font-size:.88rem; }
  .fi-sum{ display:grid; grid-template-columns:200px 1fr; gap:26px; align-items:center; background:var(--bg-panel); border:1px solid var(--line); padding:20px; }
  .fi-sum .fi-big{ font-family:var(--font-display); font-size:3.4rem; line-height:1; color:var(--gold-bright); }
  .fi-dist{ display:grid; gap:6px; } .fi-dist div{ display:grid; grid-template-columns:34px 1fr 28px; gap:10px; align-items:center; font-size:.82rem; color:var(--muted); }
  .fi-dist .fi-tr{ height:7px; background:#2a251e; } .fi-dist .fi-tr i{ display:block; height:100%; background:var(--gold); }
  .fi-form{ margin-top:22px; border:1px solid var(--line); background:var(--bg-panel); padding:20px; }
  .fi-form h3{ font-family:var(--font-display); font-weight:400; font-size:1.2rem; color:var(--beige); margin-bottom:12px; }
  .fi-starsin{ display:flex; gap:4px; margin-bottom:14px; }
  .fi-starsin button{ background:none; border:0; padding:2px; line-height:0; }
  .fi-starsin svg{ width:34px; height:34px; stroke:var(--gold); fill:none; stroke-width:1.5; transition:transform .12s; }
  .fi-starsin button.on svg{ fill:var(--gold-bright); stroke:var(--gold-bright); } .fi-starsin button:hover svg{ transform:scale(1.12); }
  .fi-starsin button:focus-visible{ outline:2px solid var(--gold-bright); outline-offset:2px; }
  .fi-form label{ display:block; font-size:.78rem; color:var(--muted); letter-spacing:.06em; text-transform:uppercase; margin:12px 0 5px; }
  .fi-form input,.fi-form textarea{ width:100%; background:var(--bg); border:1px solid var(--line); color:var(--beige); font:inherit; font-size:.95rem; padding:11px 13px; }
  .fi-form input:focus,.fi-form textarea:focus{ outline:none; border-color:var(--gold); }
  .fi-form textarea{ min-height:96px; resize:vertical; }
  .fi-form .fi-cnt{ text-align:right; font-size:.76rem; color:var(--muted); }
  .fi-msg{ margin-top:12px; font-size:.9rem; } .fi-msg.ok{ color:var(--green); } .fi-msg.err{ color:#e0836f; }
  .fi-list{ display:grid; gap:12px; margin-top:22px; }
  .fi-r{ border:1px solid var(--line); padding:14px 16px; background:#14110d; }
  .fi-r .t{ display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; align-items:center; margin-bottom:6px; }
  .fi-r .t b{ font-weight:500; color:var(--beige); } .fi-r .t small{ color:var(--muted); font-size:.78rem; }
  .fi-r p{ color:var(--beige); font-size:.94rem; white-space:pre-wrap; overflow-wrap:anywhere; }
  .fi-nota{ margin-top:30px; color:var(--muted); font-size:.78rem; max-width:70ch; }
  @media (max-width:760px){
    .fi-top{ grid-template-columns:1fr; gap:22px; } .fi-ph{ max-width:340px; }
    .fi-n{ grid-template-columns:1fr; gap:10px; } .fi-sum{ grid-template-columns:1fr; gap:16px; }
  }
  .fi-aviso{ border:1px dashed var(--line); color:var(--muted); padding:16px; font-size:.88rem; background:var(--bg-panel); }
