/* ===================================================================
   EREFIL  —  ereefil.com
   ------------------------------------------------------------------
   Look:   dark-dominant dossier. Almost every other site in this
           network is a light page with a dark hero; this one inverts
           that — graphite throughout, with bone-coloured cards lifted
           out of it. Sections are numbered like a file, and every
           label is set in monospace, which nothing else here uses.
   Type:   Schibsted Grotesk (headings) / IBM Plex Sans (text)
           / IBM Plex Mono (labels, numerals, doses)
   Colour: graphite base, bone text, product yellow as the single
           accent — taken from the bottle itself.
   Mark:   seven-axis radial — one spoke per ingredient
   ------------------------------------------------------------------
   Layout safety: grids use minmax(0,1fr); flex children get
   min-width:0; media capped with min(Npx,100%); narrow screens
   reorder the hero to headline -> product -> supporting copy.
   ------------------------------------------------------------------
   Editorial position: the review this page was drafted from claimed
   "no side effects reported", a 4.7/5 from 2,500 unverifiable
   reviews, and carried a doctor's personal endorsement. It also left
   out everything that actually matters for this category. Added
   here: that erectile difficulty is frequently an early sign of
   cardiovascular disease and warrants a doctor rather than a
   supplement; that the FDA has recalled horny goat weed products
   found to contain undeclared sildenafil; the saw palmetto PSA and
   finasteride overlap; the epimedium interaction with PDE5 drugs,
   nitrates and CYP3A4; and the fact that the human body does not
   convert wild yam's diosgenin into hormones.
=================================================================== */

:root{
  --graphite:#151517;
  --graphite-2:#1e1e21;
  --graphite-3:#2a2a2e;
  --bone:#eae6dc;
  --bone-2:#b5b1a6;
  --yellow:#e8c81e;
  --yellow-2:#c2a50f;
  --amber-warn:#e8863e;
  --card:#f3f0e8;
  --card-ink:#1a1a1c;
  --card-mute:#5f5c55;
  --hair:#39393e;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--graphite);color:var(--bone);
  font-family:'IBM Plex Sans',system-ui,sans-serif;
  font-size:17px;line-height:1.72;
}
h1,h2,h3,h4{font-family:'Schibsted Grotesk',system-ui,sans-serif;font-weight:700;line-height:1.16;letter-spacing:-.02em;color:var(--bone);margin-top:0;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;height:auto;}
.ef-hold{max-width:1120px;margin-inline:auto;padding-inline:24px;}
.ef-tag{
  display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:.72rem;
  letter-spacing:1.6px;text-transform:uppercase;color:var(--yellow);margin-bottom:12px;
}

/* ---- actions ---- */
.ef-go{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:'Schibsted Grotesk',sans-serif;font-weight:700;font-size:.98rem;
  background:var(--yellow);color:#171705;border:none;border-radius:3px;
  padding:15px 30px;cursor:pointer;transition:background .15s,transform .15s;
}
.ef-go:hover{background:var(--yellow-2);transform:translateY(-2px);}
.ef-go-line{
  display:inline-flex;align-items:center;gap:9px;font-family:'Schibsted Grotesk',sans-serif;
  font-weight:700;font-size:.95rem;padding:13px 26px;border-radius:3px;
  border:1px solid var(--bone-2);background:transparent;color:var(--bone);
  transition:background .15s,color .15s,border-color .15s;
}
.ef-go-line:hover{background:var(--bone);color:var(--graphite);border-color:var(--bone);}

/* ---- masthead ---- */
.ef-strip{
  background:var(--graphite-3);color:var(--bone-2);font-family:'IBM Plex Mono',monospace;
  font-size:.74rem;padding:9px 16px;text-align:center;letter-spacing:.02em;
}
.ef-strip b{color:var(--yellow);font-weight:500;}
.ef-head{position:sticky;top:0;z-index:900;background:var(--graphite);border-bottom:1px solid var(--hair);padding:15px 0;}
.ef-head .ef-hold{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.ef-brand{font-family:'Schibsted Grotesk',sans-serif;font-weight:700;font-size:1.35rem;letter-spacing:-.03em;}
.ef-brand i{font-style:normal;color:var(--yellow);}
.ef-nav{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center;}
.ef-nav a{font-family:'IBM Plex Mono',monospace;font-size:.82rem;letter-spacing:.4px;color:var(--bone-2);
  padding-bottom:3px;border-bottom:1px solid transparent;}
.ef-nav a:hover{color:var(--bone);border-bottom-color:var(--yellow);}
.ef-nav a.ef-go{font-family:'Schibsted Grotesk',sans-serif;font-weight:700;color:#171705;border-bottom:none;}
.ef-nav a.ef-go:hover{color:#171705;}
.ef-burger{display:none;background:none;border:none;font-size:1.6rem;cursor:pointer;color:var(--bone);line-height:1;}
@media(max-width:940px){
  .ef-nav{position:absolute;inset-inline:0;top:100%;background:var(--graphite-2);
    border-bottom:1px solid var(--hair);flex-direction:column;gap:0;display:none;}
  .ef-nav.ef-open{display:flex;}
  .ef-nav li{width:100%;border-top:1px solid var(--hair);}
  .ef-nav a{display:block;padding:15px 24px;border:none;}
  .ef-nav-cta{display:none;}
  .ef-burger{display:block;}
}

/* ---- hero ---- */
.ef-hero{padding:54px 0 0;border-bottom:1px solid var(--hair);}
.ef-hero-in{display:flex;gap:44px;align-items:center;flex-wrap:wrap;}
.ef-hero-txt{flex:1 1 460px;min-width:0;}
.ef-hero-a,.ef-hero-b{width:100%;}
.ef-hero h1{font-size:2.75rem;margin:0 0 18px;}
.ef-hero h1 em{font-style:normal;color:var(--yellow);}
.ef-hero-lede{font-size:1.06rem;color:var(--bone-2);max-width:560px;margin:0;}
.ef-hero-pic{flex:1 1 220px;min-width:0;text-align:center;}
.ef-hero-pic img{max-width:min(230px,100%);margin-inline:auto;}
.ef-hero-acts{display:flex;gap:13px;flex-wrap:wrap;margin-top:26px;}
.ef-hero-meta{display:flex;align-items:center;gap:11px;margin-top:22px;color:var(--bone-2);
  font-family:'IBM Plex Mono',monospace;font-size:.82rem;}
.ef-hero-meta .ef-stars{color:var(--yellow);letter-spacing:2px;}
@media(max-width:940px){
  .ef-hero-txt{display:contents;}
  .ef-hero-a{order:1;}
  .ef-hero-pic{order:2;margin:20px 0;}
  .ef-hero-b{order:3;}
  .ef-hero h1{font-size:2.05rem;}
}

/* ---- summary card ---- */
.ef-brief{background:var(--card);color:var(--card-ink);border-radius:4px;padding:28px 30px;margin:40px 0 0;}
.ef-brief h2{color:var(--card-ink);font-size:1.32rem;margin:0 0 12px;}
.ef-brief p{margin:0 0 18px;color:var(--card-mute);}
.ef-spec{width:100%;border-collapse:collapse;font-size:.92rem;}
.ef-spec th,.ef-spec td{text-align:left;padding:10px 10px 10px 0;border-bottom:1px solid #ddd8cb;vertical-align:top;}
.ef-spec th{width:32%;font-family:'IBM Plex Mono',monospace;font-size:.8rem;letter-spacing:.3px;
  text-transform:uppercase;color:var(--card-ink);white-space:nowrap;}
.ef-spec td{color:var(--card-mute);}
.ef-spec tr:last-child th,.ef-spec tr:last-child td{border-bottom:none;}
.ef-spec a{color:#9a5a12;text-decoration:underline;text-underline-offset:2px;}
@media(max-width:560px){
  .ef-spec th,.ef-spec td{display:block;width:100%;border-bottom:none;padding:3px 0;}
  .ef-spec th{padding-top:12px;}
  .ef-spec tr{display:block;border-bottom:1px solid #ddd8cb;padding-bottom:9px;}
}

/* ---- radial mark ---- */
.ef-radial{display:flex;justify-content:center;padding:38px 0 6px;}
.ef-radial svg{width:120px;height:120px;}
.ef-spoke{stroke:var(--hair);stroke-width:1.2;}
.ef-web{fill:rgba(232,200,30,.07);stroke:var(--yellow);stroke-width:1.8;stroke-linejoin:round;}
.ef-hub{fill:var(--yellow);}
.ef-radial-cap{text-align:center;font-family:'IBM Plex Mono',monospace;font-size:.72rem;
  letter-spacing:1.4px;text-transform:uppercase;color:#75736c;padding-bottom:34px;}

/* ---- numbered sections ---- */
.ef-sec{padding:66px 0;border-bottom:1px solid var(--hair);}
.ef-sec:last-of-type{border-bottom:none;}
.ef-sec-hd{display:flex;gap:20px;align-items:flex-start;margin-bottom:34px;}
.ef-num{font-family:'IBM Plex Mono',monospace;font-size:.9rem;color:var(--yellow);
  padding-top:8px;flex:0 0 auto;letter-spacing:1px;}
.ef-sec-title{min-width:0;}
.ef-sec-title h2{font-size:2rem;margin:0 0 10px;}
.ef-sec-title p{color:var(--bone-2);margin:0;max-width:700px;}

/* ---- body copy blocks ---- */
.ef-body{max-width:800px;}
.ef-body h3{font-size:1.32rem;margin:30px 0 10px;}
.ef-body h3:first-child{margin-top:0;}
.ef-key{
  font-size:1.02rem;color:var(--bone);background:var(--graphite-2);
  border-left:2px solid var(--yellow);padding:15px 18px;margin:0 0 15px;
}
.ef-body p{color:var(--bone-2);margin:0 0 13px;}
.ef-body p:last-child{margin-bottom:0;}
.ef-body strong{color:var(--bone);}

/* ---- alert card ---- */
.ef-alert{background:var(--card);color:var(--card-ink);border-radius:4px;
  border-left:5px solid var(--amber-warn);padding:30px 32px;max-width:860px;}
.ef-alert h3{color:var(--card-ink);font-size:1.34rem;margin:0 0 12px;}
.ef-alert h4{font-family:'IBM Plex Mono',monospace;font-size:.82rem;letter-spacing:1.2px;
  text-transform:uppercase;color:#9a5a12;margin:24px 0 8px;font-weight:600;}
.ef-alert p{color:var(--card-mute);font-size:.95rem;margin:0 0 11px;}
.ef-alert p:last-child{margin-bottom:0;}
.ef-alert strong{color:var(--card-ink);}
.ef-alert a{color:#9a5a12;text-decoration:underline;text-underline-offset:2px;}

/* ---- marks ---- */
.ef-marks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
@media(max-width:860px){.ef-marks{grid-template-columns:repeat(2,minmax(0,1fr));}}
.ef-mark{background:var(--graphite-2);border:1px solid var(--hair);border-radius:4px;padding:22px 16px;text-align:center;}
.ef-mark img{max-width:min(126px,100%);margin:0 auto 12px;}
.ef-mark b{display:block;font-family:'Schibsted Grotesk',sans-serif;font-size:.98rem;margin-bottom:6px;color:var(--bone);}
.ef-mark small{display:block;color:#8d8a82;font-size:.8rem;line-height:1.5;}

/* ---- ingredient rows ---- */
.ef-rows{max-width:860px;}
.ef-row{border-top:1px solid var(--hair);padding:24px 0;display:flex;gap:22px;align-items:flex-start;}
.ef-row:last-child{border-bottom:1px solid var(--hair);}
.ef-row-n{font-family:'IBM Plex Mono',monospace;font-size:.82rem;color:var(--yellow);
  flex:0 0 auto;width:34px;padding-top:5px;}
.ef-row-c{min-width:0;}
.ef-row-c h4{font-size:1.2rem;margin:0 0 4px;}
.ef-latin{font-family:'IBM Plex Mono',monospace;font-size:.78rem;color:#75736c;
  display:block;margin-bottom:9px;letter-spacing:.3px;}
.ef-row-c p{margin:0;color:var(--bone-2);font-size:.94rem;}
.ef-caution{display:block;margin-top:12px;font-size:.88rem;color:#f0b184;
  background:rgba(232,134,62,.09);border-left:2px solid var(--amber-warn);padding:10px 13px;}

/* ---- pricing ---- */
.ef-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;}
@media(max-width:920px){.ef-tiers{grid-template-columns:1fr;max-width:400px;margin-inline:auto;}}
.ef-tier{background:var(--card);color:var(--card-ink);border-radius:4px;padding:26px 22px;
  text-align:center;display:flex;flex-direction:column;position:relative;}
.ef-tier-best{outline:2px solid var(--yellow);outline-offset:-2px;}
.ef-flag{position:absolute;top:0;right:0;background:var(--yellow);color:#171705;
  font-family:'IBM Plex Mono',monospace;font-size:.66rem;letter-spacing:1.1px;
  text-transform:uppercase;padding:5px 11px;}
.ef-flag.ef-flag-dk{background:var(--graphite);color:var(--yellow);}
.ef-slot{height:150px;display:flex;align-items:center;justify-content:center;margin:8px 0 14px;}
.ef-slot img{max-height:150px;width:auto;max-width:100%;}
.ef-tier-nm{font-family:'Schibsted Grotesk',sans-serif;font-weight:700;font-size:1.2rem;}
.ef-tier-sub{color:var(--card-mute);font-family:'IBM Plex Mono',monospace;font-size:.76rem;
  letter-spacing:.6px;text-transform:uppercase;margin-bottom:12px;}
.ef-tier-rate{font-family:'Schibsted Grotesk',sans-serif;font-weight:700;font-size:2.3rem;line-height:1;}
.ef-tier-rate small{font-family:'IBM Plex Mono',monospace;font-size:.78rem;font-weight:400;color:var(--card-mute);}
.ef-tier-tot{font-weight:700;margin:9px 0 2px;}
.ef-tier-ship{font-family:'IBM Plex Mono',monospace;font-size:.76rem;color:#9a5a12;margin-bottom:16px;min-height:1.2em;}
.ef-tier-ship.ef-plain{color:var(--card-mute);}
.ef-tier .ef-go{width:100%;margin-top:auto;}
.ef-tier-cards{max-width:min(170px,100%);margin:13px auto 0;opacity:.7;}
.ef-tiers-note{color:#8d8a82;font-size:.87rem;max-width:740px;margin:26px auto 0;text-align:center;}

/* ---- outcomes ---- */
.ef-outs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
@media(max-width:900px){.ef-outs{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.ef-outs{grid-template-columns:1fr;}}
.ef-out{background:var(--graphite-2);border:1px solid var(--hair);border-radius:4px;padding:22px 20px;}
.ef-out h4{font-size:1.02rem;margin:0 0 7px;}
.ef-out p{margin:0;color:var(--bone-2);font-size:.91rem;}

/* ---- voices ---- */
.ef-says{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
@media(max-width:900px){.ef-says{grid-template-columns:1fr;}}
.ef-say{background:var(--graphite-2);border:1px solid var(--hair);border-radius:4px;padding:24px 20px;}
.ef-say-hd{display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.ef-say-hd img{width:48px;height:48px;border-radius:50%;object-fit:cover;}
.ef-say-nm{font-weight:600;font-size:.94rem;}
.ef-say-lo{color:#75736c;font-family:'IBM Plex Mono',monospace;font-size:.74rem;}
.ef-say-st{color:var(--yellow);letter-spacing:2px;margin-bottom:7px;font-size:.88rem;}
.ef-say p{margin:0;color:var(--bone-2);font-size:.91rem;}
.ef-says-note{color:#8d8a82;font-size:.85rem;max-width:680px;margin:24px auto 0;text-align:center;}
.ef-rating{text-align:center;margin-top:24px;}
.ef-rating img{max-width:min(280px,100%);margin-inline:auto;}

/* ---- guarantee ---- */
.ef-pledge{display:flex;gap:36px;align-items:center;flex-wrap:wrap;background:var(--card);
  color:var(--card-ink);border-radius:4px;padding:34px;}
.ef-pledge img{max-width:min(160px,100%);margin-inline:auto;}
.ef-pledge-c{flex:1 1 340px;min-width:0;}
.ef-pledge-c h3{color:var(--card-ink);font-size:1.65rem;margin:0 0 12px;}
.ef-pledge-c p{color:var(--card-mute);}
.ef-pledge-c .ef-tag{color:#9a5a12;}

/* ---- closer ---- */
.ef-closer{background:var(--graphite-2);border:1px solid var(--hair);border-radius:4px;
  padding:50px 30px;text-align:center;}
.ef-closer h2{font-size:2rem;margin:0 0 8px;}
.ef-closer img{max-width:min(280px,100%);margin:22px auto;}
.ef-closer-rate{font-family:'Schibsted Grotesk',sans-serif;font-weight:700;color:var(--yellow);font-size:2rem;margin:4px 0 20px;}
.ef-closer-fine{color:#8d8a82;font-size:.87rem;max-width:560px;margin:20px auto 0;}

/* ---- FAQ ---- */
.ef-faq{max-width:840px;}
.ef-fi{border-top:1px solid var(--hair);}
.ef-fi:last-child{border-bottom:1px solid var(--hair);}
.ef-fq{width:100%;background:none;border:none;cursor:pointer;text-align:left;
  font-family:'Schibsted Grotesk',sans-serif;font-weight:700;font-size:1.05rem;color:var(--bone);
  padding:19px 2px;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.ef-fq::after{content:'+';font-family:'IBM Plex Mono',monospace;font-size:1.25rem;color:var(--yellow);
  transition:transform .2s;flex-shrink:0;line-height:1;}
.ef-fi.ef-shown .ef-fq::after{transform:rotate(45deg);}
.ef-fa{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.ef-fa p{margin:0 0 12px;padding:0 2px;color:var(--bone-2);font-size:.94rem;}
.ef-fa p:last-child{padding-bottom:19px;}

/* ---- refs ---- */
.ef-refs{max-width:860px;}
.ef-refs ol{padding-left:22px;margin:0;}
.ef-refs li{margin-bottom:11px;color:var(--bone-2);font-size:.91rem;}
.ef-refs a{color:var(--yellow);text-decoration:underline;text-underline-offset:2px;word-break:break-word;}
.ef-refs-note{color:#75736c;font-size:.86rem;margin-top:20px;}

/* ---- internal links ---- */
.ef-more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
@media(max-width:860px){.ef-more{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:480px){.ef-more{grid-template-columns:1fr;}}
.ef-more a{display:block;background:var(--graphite-2);border:1px solid var(--hair);border-radius:4px;
  padding:18px 16px;transition:border-color .15s,transform .15s;}
.ef-more a:hover{border-color:var(--yellow);transform:translateY(-2px);}
.ef-more b{display:block;font-family:'Schibsted Grotesk',sans-serif;font-size:1rem;margin-bottom:5px;color:var(--bone);}
.ef-more span{color:#8d8a82;font-size:.83rem;}

.ef-link{color:var(--yellow);text-decoration:underline;text-underline-offset:2px;}

/* ---- footer ---- */
.ef-foot{background:#0f0f11;color:#7d7a73;padding:42px 0 28px;font-size:.86rem;border-top:1px solid var(--hair);}
.ef-foot a{color:var(--bone-2);text-decoration:underline;text-underline-offset:2px;}
.ef-foot a:hover{color:var(--yellow);}
.ef-foot hr{border:none;border-top:1px solid #26262a;margin:24px 0;}
.ef-foot p{margin:0 0 14px;}

/* ---- mobile bar ---- */
.ef-dock{position:fixed;inset-inline:0;bottom:0;z-index:950;background:#0f0f11;padding:9px 16px;
  display:none;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--yellow);}
.ef-dock-p{color:var(--bone);line-height:1.2;}
.ef-dock-p b{color:var(--yellow);font-family:'Schibsted Grotesk',sans-serif;font-size:1.05rem;}
.ef-dock-p small{display:block;color:#7d7a73;font-family:'IBM Plex Mono',monospace;font-size:.68rem;}
@media(max-width:940px){.ef-dock{display:flex;}body{padding-bottom:66px;}}

.ef-mid{text-align:center;}
