/* Inpherio partner placements — see md-pages/_partner.php. Amber is Inpherio's brand colour. */
:root{--inph:#ffc24b;--inph-a:rgba(255,194,75,.45);--inph-s:rgba(255,194,75,.08)}

/* shared bits */
.inph-logo{display:inline-flex;align-items:center;gap:8px;color:var(--inph);font-family:var(--sans);font-weight:700;font-size:17px;letter-spacing:-.01em;line-height:1}
.inph-logo span{color:var(--txt)}
.inph-tag{font-family:var(--mono);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--txt3);border:1px solid var(--bd2);border-radius:3px;padding:2px 7px;line-height:1.4}
.inph-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.inph-kicker{font-family:var(--mono);font-size:11px;color:var(--txt3);margin:0 0 6px}
.inph-cta{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:var(--inph);white-space:nowrap}
.inph-cta i,.inph-btn i{transition:transform .2s}
.inph-card em,.inph-banner em,.inph-strip em{font-style:normal;color:var(--inph)}

/* install hero: text left, card right */
.inst-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px;align-items:start;margin-bottom:48px}
.inst-hero .section-hdr{text-align:left;margin-bottom:0}
.inst-hero .section-lead{margin:0;max-width:600px}
.inst-hero .inph-card{margin-top:44px}

/* side card */
.inph-card{display:block;position:relative;overflow:hidden;padding:24px 24px 22px;background:linear-gradient(160deg,var(--inph-s),rgba(255,194,75,0) 55%),var(--bg2);border:1px solid var(--bd2);border-radius:var(--r2);color:var(--txt);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.inph-card::before,.inph-banner::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,var(--inph),rgba(255,194,75,0))}
.inph-card:hover{border-color:var(--inph-a);transform:translateY(-2px);box-shadow:0 10px 30px -12px rgba(255,194,75,.25);text-decoration:none;color:var(--txt)}
.inph-card h3{font-size:1.35rem;margin:0 0 10px}
.inph-card p{font-size:13px;line-height:1.65;color:var(--txt2);margin:0 0 16px}
.inph-card p.inph-kicker{font-size:11px;color:var(--txt3);margin:0 0 6px}
.inph-card:hover .inph-cta i{transform:translateX(3px)}

/* hardware banner */
.inph-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;position:relative;overflow:hidden;margin-bottom:48px;padding:28px 32px;border:1px solid rgba(255,194,75,.22);border-radius:var(--r2);color:var(--txt);text-decoration:none;
  background:radial-gradient(120% 140% at 100% 0%,rgba(255,194,75,.12),rgba(255,194,75,0) 55%),linear-gradient(160deg,var(--bg3),var(--bg2));transition:border-color .2s,box-shadow .2s,transform .2s}
.inph-banner::after{content:"";position:absolute;right:-60px;bottom:-80px;width:260px;height:260px;border-radius:50%;border:22px solid rgba(255,194,75,.05);pointer-events:none}
.inph-banner:hover{border-color:var(--inph-a);transform:translateY(-2px);box-shadow:0 14px 40px -16px rgba(255,194,75,.3);text-decoration:none;color:var(--txt)}
.inph-banner .inph-top{justify-content:flex-start;margin-bottom:14px}
.inph-banner h3{font-size:clamp(1.3rem,2.4vw,1.75rem);margin:0 0 10px}
.inph-banner p{font-size:13px;line-height:1.7;color:var(--txt2);margin:0 0 16px;max-width:720px}
.inph-banner p.inph-kicker{font-size:11px;color:var(--txt3);margin:0 0 6px}
.inph-chips{display:flex;flex-wrap:wrap;gap:6px}
.inph-chips span{font-family:var(--mono);font-size:10px;color:var(--txt3);background:var(--bg);border:1px solid var(--bd2);border-radius:3px;padding:3px 8px}
.inph-banner-side{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:1}
.inph-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;background:var(--inph);color:#1a1200;border-radius:var(--r);font-size:13px;font-weight:800;white-space:nowrap;box-shadow:0 6px 20px -8px rgba(255,194,75,.6)}
.inph-banner:hover .inph-btn i{transform:translateX(3px)}
.inph-note{font-family:var(--mono);font-size:9px;color:var(--txt3);letter-spacing:1px}

/* footer strip */
.inph-strip{max-width:var(--max);margin:0 auto 40px;display:flex;align-items:center;gap:14px;padding:14px 20px;border:1px solid var(--bd2);border-left:2px solid var(--inph);border-radius:var(--r2);
  background:linear-gradient(90deg,var(--inph-s),rgba(255,194,75,0) 40%),var(--bg2);color:var(--txt2);text-decoration:none;font-size:13px;transition:border-color .2s,box-shadow .2s}
.inph-strip:hover{border-color:var(--inph-a);border-left-color:var(--inph);box-shadow:0 8px 26px -14px rgba(255,194,75,.35);text-decoration:none;color:var(--txt2)}
.inph-strip .inph-line{flex:1;min-width:0}
.inph-strip .inph-cta{margin-left:auto}
.inph-strip:hover .inph-cta i{transform:translateX(3px)}

@media(max-width:860px){
  .inst-hero{grid-template-columns:1fr;gap:28px}
  .inst-hero .inph-card{margin-top:0}
  .inph-banner{grid-template-columns:1fr;gap:20px;padding:22px 20px}
  .inph-banner-side{align-items:flex-start}
  .inph-strip{flex-wrap:wrap;gap:8px 12px;padding:14px 16px}
  .inph-strip .inph-line{flex-basis:100%;order:3}
  .inph-strip .inph-cta{order:4;margin-left:0}
}
