/*
Theme Name: Indian Veterinary Magazine
Theme URI: https://indianveterinarymagazine.in/
Author: Indian Veterinary Magazine
Author URI: https://indianveterinarymagazine.in/
Description: A modern, minimal and premium WordPress theme for the Indian Veterinary Magazine — a scientific publishing journal. Includes article submission with email delivery, payment workflow, and a clean academic design. Gutenberg compatible, responsive, no page builder dependency.
Version: 2.5.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ivm
Tags: academic, journal, publication, minimal, clean, responsive, block-editor-styles, custom-logo, custom-menu, featured-images, threaded-comments
*/

/* =========================================================
   Indian Veterinary Magazine — Design System
   Minimal · Elegant · Professional · Trustworthy
   ========================================================= */

:root{
  --ivm-bg: #ffffff;
  --ivm-surface: #ffffff;
  --ivm-surface-alt: #f4f7f3;
  --ivm-border: #e1e8df;
  --ivm-text: #14241b;
  --ivm-muted: #566a5e;
  --ivm-accent: #1B5E20;             /* Deep green */
  --ivm-accent-hover: #0f3f15;
  --ivm-accent-soft: #e3efe4;
  --ivm-gold: #C9A227;                /* Accent gold */

  --ivm-font-display: 'Merriweather', Georgia, 'Times New Roman', serif;
  --ivm-font-body: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --ivm-radius: 8px;
  --ivm-radius-lg: 14px;
  --ivm-shadow: 0 1px 2px rgba(0,0,0,.04), 0 6px 24px rgba(0,0,0,.05);

  --ivm-container: 1180px;
  --ivm-space: clamp(1rem, 2vw, 1.5rem);
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--ivm-bg);
  color:var(--ivm-text);
  font-family:var(--ivm-font-body);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--ivm-accent); text-decoration:none; }
a:hover{ color:var(--ivm-accent-hover); text-decoration:underline; }

h1,h2,h3,h4{
  font-family:var(--ivm-font-display);
  font-weight:600;
  letter-spacing:-0.02em;
  line-height:1.15;
  color:var(--ivm-text);
  margin:0 0 .6em;
}
h1{ font-size:clamp(2.2rem, 5vw, 3.6rem); }
h2{ font-size:clamp(1.6rem, 3vw, 2.2rem); }
h3{ font-size:1.25rem; }
p{ margin:0 0 1em; }

.ivm-container{
  max-width:var(--ivm-container);
  margin:0 auto;
  padding:0 1.25rem;
}

/* ----- Header ----- */
.ivm-site-header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--ivm-border);
}
.ivm-header-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:1.5rem; padding:.85rem 0;
}
.ivm-brand{ display:flex; align-items:center; gap:.75rem; }
.ivm-brand img{ max-height:48px; width:auto; }
.ivm-brand-text{
  font-family:var(--ivm-font-display);
  font-weight:700; font-size:1.05rem; letter-spacing:-.01em;
  color:var(--ivm-text);
}
.ivm-brand-text small{ display:block; font-weight:400; font-size:.72rem; color:var(--ivm-muted); letter-spacing:.08em; text-transform:uppercase; }

.ivm-nav ul{
  list-style:none; padding:0; margin:0;
  display:flex; gap:1.6rem; align-items:center;
}
.ivm-nav a{
  color:var(--ivm-text); font-weight:500; font-size:.94rem;
  letter-spacing:.01em; padding:.4rem 0; position:relative;
}
.ivm-nav a:hover{ color:var(--ivm-accent); text-decoration:none; }
.ivm-nav .current-menu-item > a{ color:var(--ivm-accent); }

.ivm-header-cta{ display:flex; align-items:center; gap:.75rem; }

.ivm-menu-toggle{
  display:none; background:none; border:0; cursor:pointer; padding:.4rem;
}
.ivm-menu-toggle span{ display:block; width:22px; height:2px; background:var(--ivm-text); margin:5px 0; }

/* ----- Buttons ----- */
.ivm-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.4rem;
  padding:.78rem 1.4rem;
  border-radius:var(--ivm-radius);
  font-family:var(--ivm-font-display); font-weight:600; font-size:.95rem;
  border:1px solid transparent; cursor:pointer; text-decoration:none;
  transition:all .18s ease;
}
.ivm-btn-primary{ background:var(--ivm-accent); color:#fff; }
.ivm-btn-primary:hover{ background:var(--ivm-accent-hover); color:#fff; text-decoration:none; }
.ivm-btn-gold{ background:var(--ivm-gold); color:#1a1300; }
.ivm-btn-gold:hover{ background:#b08c1e; color:#1a1300; text-decoration:none; }
.ivm-btn-outline{ background:transparent; color:var(--ivm-text); border-color:var(--ivm-border); }
.ivm-btn-outline:hover{ border-color:var(--ivm-accent); color:var(--ivm-accent); text-decoration:none; }
.ivm-btn-outline-light{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,.55); }
.ivm-btn-outline-light:hover{ background:rgba(255,255,255,.1); color:#fff; text-decoration:none; }
.ivm-btn-ghost{ background:transparent; color:var(--ivm-accent); padding:.4rem .6rem; }
.ivm-btn-sm{ padding:.55rem 1rem; font-size:.85rem; }

/* ----- Hero ----- */
.ivm-hero{
  padding:clamp(4rem, 10vw, 8rem) 0 clamp(3rem, 8vw, 6rem);
  text-align:center;
  background:
    radial-gradient(ellipse at top, var(--ivm-accent-soft), transparent 60%),
    var(--ivm-bg);
  border-bottom:1px solid var(--ivm-border);
}
.ivm-hero .eyebrow{
  display:inline-block;
  font-size:.78rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ivm-accent); font-weight:600; margin-bottom:1.2rem;
}
.ivm-hero h1{ max-width:18ch; margin-inline:auto; }
.ivm-hero .lead{
  font-size:clamp(1.05rem, 1.6vw, 1.25rem);
  color:var(--ivm-muted); max-width:46ch; margin:1rem auto 2rem;
}
.ivm-hero-cta{ display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; }

/* ----- Sections ----- */
.ivm-section{ padding:clamp(3.5rem, 7vw, 6rem) 0; }
.ivm-section + .ivm-section{ border-top:1px solid var(--ivm-border); }
.ivm-section-head{ text-align:center; margin-bottom:3rem; }
.ivm-section-head .kicker{
  font-size:.74rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ivm-muted); font-weight:600; margin-bottom:.7rem;
}
.ivm-section-head h2{ margin:0; }

/* ----- Current Issue ----- */
.ivm-issue{
  display:grid; grid-template-columns:minmax(220px, 320px) 1fr;
  gap:3rem; align-items:center;
  max-width:900px; margin:0 auto;
}
.ivm-issue-cover{
  aspect-ratio:3/4; background:var(--ivm-surface);
  border:1px solid var(--ivm-border); border-radius:var(--ivm-radius-lg);
  overflow:hidden; box-shadow:var(--ivm-shadow);
}
.ivm-issue-cover img{ width:100%; height:100%; object-fit:cover; }
.ivm-issue-meta .vol{
  font-family:var(--ivm-font-display); font-weight:600;
  color:var(--ivm-accent); font-size:.85rem; letter-spacing:.15em; text-transform:uppercase;
}
.ivm-issue-meta h3{ font-size:1.8rem; margin:.4rem 0 1rem; }
.ivm-issue-meta p{ color:var(--ivm-muted); margin-bottom:1.5rem; }

/* ----- Steps ----- */
.ivm-steps{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5rem;
  max-width:920px; margin:0 auto;
}
.ivm-step{
  text-align:center; padding:2rem 1.25rem;
}
.ivm-step-num{
  display:inline-flex; align-items:center; justify-content:center;
  width:46px; height:46px; border-radius:50%;
  background:var(--ivm-accent-soft); color:var(--ivm-accent);
  font-family:var(--ivm-font-display); font-weight:700; font-size:1.05rem;
  margin-bottom:1rem;
}
.ivm-step h3{ font-size:1.1rem; margin:0 0 .4rem; }
.ivm-step p{ color:var(--ivm-muted); font-size:.95rem; margin:0; }

/* ----- Articles grid ----- */
.ivm-articles{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5rem;
}
.ivm-article-card{
  border:1px solid var(--ivm-border); border-radius:var(--ivm-radius-lg);
  padding:1.5rem; background:#fff; transition:border-color .2s, transform .2s;
}
.ivm-article-card:hover{ border-color:var(--ivm-accent); }
.ivm-article-card .meta{
  font-size:.74rem; letter-spacing:.15em; text-transform:uppercase;
  color:var(--ivm-muted); margin-bottom:.7rem;
}
.ivm-article-card h3{ font-size:1.1rem; margin:0 0 .6rem; line-height:1.35; }
.ivm-article-card h3 a{ color:var(--ivm-text); }
.ivm-article-card h3 a:hover{ color:var(--ivm-accent); text-decoration:none; }
.ivm-article-card .excerpt{ color:var(--ivm-muted); font-size:.93rem; margin:0 0 1rem; }
.ivm-article-card .read-more{ font-weight:600; font-size:.88rem; }

.ivm-center-cta{ text-align:center; margin-top:2.5rem; }

/* ----- Editorial Board preview ----- */
.ivm-editors{
  display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:1.5rem; max-width:900px; margin:0 auto;
}
.ivm-editor{
  text-align:center; padding:1.25rem;
  border:1px solid var(--ivm-border); border-radius:var(--ivm-radius-lg);
  background:#fff;
}
.ivm-editor .name{ font-family:var(--ivm-font-display); font-weight:600; }
.ivm-editor .role{ color:var(--ivm-muted); font-size:.86rem; margin-top:.2rem; }

/* Tiered board */
.ivm-board-tier{ margin: 2.5rem auto; max-width:1100px; }
.ivm-board-tier .ivm-section-head{ margin-bottom:1.25rem; }
.ivm-editors--chief{ grid-template-columns: minmax(260px, 420px); justify-content:center; }
.ivm-editors--chief .ivm-editor{ padding:1.75rem; border-width:2px; border-color: var(--ivm-accent, #143228); }
.ivm-editors--chief .ivm-editor .name{ font-size:1.15rem; }
.ivm-board-tier--chief{ margin-top:1rem; }

/* ----- Forms ----- */
.ivm-form{
  max-width:680px; margin:0 auto;
  background:#fff; border:1px solid var(--ivm-border);
  border-radius:var(--ivm-radius-lg); padding:clamp(1.5rem, 4vw, 2.5rem);
}
.ivm-form .row{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.ivm-field{ margin-bottom:1.1rem; }
.ivm-field label{
  display:block; font-weight:600; font-size:.88rem; margin-bottom:.4rem;
  color:var(--ivm-text);
}
.ivm-field label .req{ color:#c33; }
.ivm-field input[type=text],
.ivm-field input[type=email],
.ivm-field input[type=tel],
.ivm-field input[type=number],
.ivm-field textarea,
.ivm-field select{
  width:100%; padding:.7rem .85rem; font:inherit;
  border:1px solid var(--ivm-border); border-radius:var(--ivm-radius);
  background:#fff; color:var(--ivm-text); transition:border-color .15s;
}
.ivm-field textarea{ min-height:120px; resize:vertical; }
.ivm-field input:focus,
.ivm-field textarea:focus,
.ivm-field select:focus{ outline:none; border-color:var(--ivm-accent); box-shadow:0 0 0 3px var(--ivm-accent-soft); }

.ivm-dropzone{
  border:2px dashed var(--ivm-border); border-radius:var(--ivm-radius-lg);
  padding:2rem 1rem; text-align:center; cursor:pointer;
  transition:border-color .15s, background .15s;
  background:var(--ivm-surface);
}
.ivm-dropzone.is-drag{ border-color:var(--ivm-accent); background:var(--ivm-accent-soft); }
.ivm-dropzone p{ margin:.25rem 0; color:var(--ivm-muted); font-size:.92rem; }
.ivm-dropzone .file-name{ font-weight:600; color:var(--ivm-text); }
.ivm-dropzone input[type=file]{ display:none; }

.ivm-form-note{ font-size:.82rem; color:var(--ivm-muted); margin-top:.4rem; }
.ivm-form-submit{ text-align:center; margin-top:1.5rem; }

.ivm-alert{
  padding:1rem 1.2rem; border-radius:var(--ivm-radius);
  margin-bottom:1.5rem; font-size:.93rem;
}
.ivm-alert-success{ background:var(--ivm-accent-soft); color:var(--ivm-accent); border:1px solid var(--ivm-accent); }
.ivm-alert-error{ background:#fdecec; color:#a3201f; border:1px solid #f4b3b3; }

.ivm-success-card{
  text-align:center; max-width:540px; margin:3rem auto;
  padding:3rem 2rem; border:1px solid var(--ivm-border);
  border-radius:var(--ivm-radius-lg); background:#fff;
}
.ivm-success-card .check{
  display:inline-flex; align-items:center; justify-content:center;
  width:64px; height:64px; border-radius:50%;
  background:var(--ivm-accent-soft); color:var(--ivm-accent);
  font-size:2rem; margin-bottom:1rem;
}
.ivm-success-card h2{ margin:0 0 .5rem; }
.ivm-success-card p{ color:var(--ivm-muted); }

/* ----- Page content ----- */
.ivm-page{ padding:clamp(3rem, 6vw, 5rem) 0; }
.ivm-page-head{ text-align:center; margin-bottom:2.5rem; }
.ivm-page-head h1{ margin:0; }
.ivm-page-head p{ color:var(--ivm-muted); max-width:60ch; margin:1rem auto 0; }
.ivm-prose{ max-width:720px; margin:0 auto; }
.ivm-prose img{ border-radius:var(--ivm-radius); margin:1.5rem 0; }

/* Archive listing */
.ivm-archive-list{
  list-style:none; padding:0; margin:0;
  border-top:1px solid var(--ivm-border);
}
.ivm-archive-list li{
  border-bottom:1px solid var(--ivm-border);
  padding:1.5rem 0;
}
.ivm-archive-list .meta{
  font-size:.78rem; letter-spacing:.15em; text-transform:uppercase;
  color:var(--ivm-muted); margin-bottom:.3rem;
}
.ivm-archive-list h2{ font-size:1.25rem; margin:0 0 .4rem; }
.ivm-archive-list h2 a{ color:var(--ivm-text); }
.ivm-archive-list h2 a:hover{ color:var(--ivm-accent); text-decoration:none; }
.ivm-archive-list .excerpt{ color:var(--ivm-muted); margin:0; }

/* ----- Footer ----- */
.ivm-site-footer{
  background:var(--ivm-surface);
  border-top:1px solid var(--ivm-border);
  padding:3rem 0 1.5rem; margin-top:4rem;
}
.ivm-footer-inner{
  display:flex; justify-content:space-between; align-items:flex-start;
  gap:2rem; flex-wrap:wrap;
}
.ivm-footer-brand{ max-width:340px; }
.ivm-footer-brand p{ color:var(--ivm-muted); font-size:.92rem; margin:.6rem 0 0; }
.ivm-footer-links ul{ list-style:none; padding:0; margin:0; display:flex; gap:1.5rem; flex-wrap:wrap; }
.ivm-footer-links a{ color:var(--ivm-text); font-size:.92rem; }
.ivm-footer-bottom{
  text-align:center; color:var(--ivm-muted); font-size:.84rem;
  margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--ivm-border);
}
.ivm-footer-bottom .issn{ display:inline-block; margin-right:1rem; font-family:var(--ivm-font-display); font-weight:600; }

/* ----- Responsive ----- */
@media (max-width: 900px){
  .ivm-articles{ grid-template-columns:1fr; }
  .ivm-steps{ grid-template-columns:1fr; gap:0; }
  .ivm-issue{ grid-template-columns:1fr; text-align:center; }
  .ivm-issue-cover{ max-width:260px; margin:0 auto; }
  .ivm-form .row{ grid-template-columns:1fr; }
}
@media (max-width: 760px){
  .ivm-menu-toggle{ display:block; }
  .ivm-nav{
    display:none; position:absolute; top:100%; left:0; right:0;
    background:#fff; border-bottom:1px solid var(--ivm-border);
    padding:1rem 1.25rem;
  }
  .ivm-nav.is-open{ display:block; }
  .ivm-nav ul{ flex-direction:column; gap:.4rem; align-items:flex-start; }
  .ivm-nav a{ padding:.6rem 0; display:block; width:100%; }
  .ivm-header-cta .ivm-btn-primary{ padding:.55rem .9rem; font-size:.85rem; }
}

/* Skip link */
.ivm-skip{
  position:absolute; left:-9999px; top:auto;
  background:var(--ivm-accent); color:#fff; padding:.6rem 1rem; z-index:100;
}
.ivm-skip:focus{ left:1rem; top:1rem; }

/* Gutenberg alignment helpers */
.alignwide{ max-width:1100px; margin-inline:auto; }
.alignfull{ width:100%; }

/* ----- Header search ----- */
.ivm-search-toggle{
  display:inline-flex; align-items:center; gap:.45rem;
  background:transparent; border:1px solid var(--ivm-border);
  color:var(--ivm-text); padding:.5rem .85rem; border-radius:999px;
  font:inherit; font-size:.85rem; cursor:pointer; margin-right:.5rem;
  transition:background .15s ease, border-color .15s ease;
}
.ivm-search-toggle:hover{ background:var(--ivm-surface); border-color:var(--ivm-accent); color:var(--ivm-accent); }
.ivm-search-toggle svg{ display:block; }
.ivm-header-cta{ display:flex; align-items:center; }

.ivm-search-overlay{
  position:absolute; top:100%; left:0; right:0;
  background:#fff; border-bottom:1px solid var(--ivm-border);
  padding:1.25rem 1.25rem; box-shadow:0 18px 40px -28px rgba(15,40,30,.25);
  z-index:60;
}
.ivm-search-overlay.is-open{ display:block; }
.ivm-search-form{
  max-width:760px; margin:0 auto; display:flex; gap:.6rem; align-items:center;
}
.ivm-search-form input[type=search]{
  flex:1; padding:.85rem 1rem; border:1px solid var(--ivm-border);
  border-radius:var(--ivm-radius); font:inherit; font-size:1rem; outline:none;
  background:var(--ivm-surface);
}
.ivm-search-form input[type=search]:focus{ border-color:var(--ivm-accent); background:#fff; }
.ivm-search-close{
  background:transparent; border:none; font-size:1.6rem; line-height:1;
  color:var(--ivm-muted); cursor:pointer; padding:.25rem .5rem;
}
.ivm-search-close:hover{ color:var(--ivm-accent); }

/* ----- Archives by Volume / Issue ----- */
.ivm-archives-wrap{ max-width:880px; margin:0 auto; }
.ivm-archive-search{
  display:flex; gap:.6rem; margin:0 0 2.5rem;
  padding:1rem; border:1px solid var(--ivm-border); border-radius:var(--ivm-radius);
  background:var(--ivm-surface);
}
.ivm-archive-search input[type=search]{
  flex:1; padding:.7rem .9rem; border:1px solid var(--ivm-border);
  border-radius:calc(var(--ivm-radius) - 4px); background:#fff;
  font:inherit; font-size:.95rem; outline:none;
}
.ivm-archive-search input[type=search]:focus{ border-color:var(--ivm-accent); }

.ivm-vol-block{ margin-bottom:3.5rem; }
.ivm-vol-head{
  border-bottom:2px solid var(--ivm-accent);
  padding-bottom:.6rem; margin-bottom:1.5rem;
}
.ivm-vol-head h2{
  font-family:var(--ivm-font-display);
  font-size:1.75rem; margin:0; color:var(--ivm-text);
}
.ivm-vol-head p{ margin:.4rem 0 0; color:var(--ivm-muted); font-size:.92rem; }

.ivm-issue-block{
  margin:1.5rem 0 2rem;
  padding:1.25rem 1.5rem;
  background:var(--ivm-surface);
  border-radius:var(--ivm-radius);
  border:1px solid var(--ivm-border);
}
.ivm-issue-title{
  font-size:1.05rem; margin:0 0 1rem;
  letter-spacing:.02em; color:var(--ivm-accent);
  font-family:var(--ivm-font-display); font-weight:600;
}
.ivm-issue-title .count{ color:var(--ivm-muted); font-weight:500; font-size:.85em; }
.ivm-issue-block .ivm-archive-list{ border-top:1px solid var(--ivm-border); }
.ivm-issue-block .ivm-archive-list li{ padding:1rem 0; }
.ivm-issue-block .ivm-archive-list h4{
  font-size:1.05rem; margin:.2rem 0 .35rem; font-family:var(--ivm-font-display);
}
.ivm-issue-block .ivm-archive-list h4 a{ color:var(--ivm-text); }
.ivm-issue-block .ivm-archive-list h4 a:hover{ color:var(--ivm-accent); }
.ivm-archive-empty{ color:var(--ivm-muted); font-style:italic; }
.ivm-pill{
  display:inline-block; padding:.1rem .55rem; font-size:.7rem;
  border-radius:999px; background:var(--ivm-accent); color:#fff;
  text-transform:uppercase; letter-spacing:.08em;
}

@media (max-width: 600px){
  .ivm-search-toggle span{ display:none; }
  .ivm-search-toggle{ padding:.5rem .55rem; }
  .ivm-archive-search{ flex-direction:column; }
}

/* =========================================================
   v1.2 — Featured Current Issue landing + organized bands
   ========================================================= */
.ivm-section:nth-of-type(even){ background:var(--ivm-surface-alt); }
.ivm-section{ background:var(--ivm-bg); }

/* Hero featuring the current issue cover */
.ivm-hero-featured{
  background:
    radial-gradient(ellipse at 80% 0%, var(--ivm-accent-soft), transparent 55%),
    linear-gradient(180deg, #f0ebde 0%, var(--ivm-bg) 100%);
  border-bottom:1px solid var(--ivm-border);
  padding: clamp(3rem, 6vw, 5.5rem) 0;
}
.ivm-hero-featured .grid{
  display:grid; grid-template-columns: minmax(220px, 360px) 1fr;
  gap: clamp(2rem, 5vw, 4rem); align-items:center;
}
.ivm-hero-featured .cover{
  aspect-ratio:3/4; background:var(--ivm-surface);
  border:1px solid var(--ivm-border); border-radius:var(--ivm-radius-lg);
  overflow:hidden; box-shadow: 0 20px 50px -20px rgba(20,50,40,.35), 0 2px 8px rgba(0,0,0,.06);
  position:relative;
}
.ivm-hero-featured .cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.ivm-hero-featured .cover-fallback{
  display:flex; align-items:center; justify-content:center; height:100%;
  font-family:var(--ivm-font-display); color:var(--ivm-accent); font-weight:700;
  font-size:1.1rem; padding:1.5rem; text-align:center;
}
.ivm-hero-featured .eyebrow{
  display:inline-block; background:var(--ivm-accent); color:#fff;
  font-family:var(--ivm-font-display); font-size:.72rem; font-weight:700;
  letter-spacing:.18em; text-transform:uppercase; padding:.4rem .8rem;
  border-radius:999px; margin-bottom:1rem;
}
.ivm-hero-featured h1{
  font-family:var(--ivm-font-display); font-size: clamp(1.9rem, 3.4vw, 2.8rem);
  line-height:1.15; margin:.2rem 0 .9rem; color:var(--ivm-text);
}
.ivm-hero-featured .vol{
  font-family:var(--ivm-font-display); font-weight:600; color:var(--ivm-accent);
  letter-spacing:.12em; text-transform:uppercase; font-size:.85rem; margin-bottom:.6rem;
}
.ivm-hero-featured .lead{ color:var(--ivm-muted); max-width:52ch; font-size:1.05rem; margin-bottom:1.6rem; }
.ivm-hero-featured .ctas{ display:flex; gap:.7rem; flex-wrap:wrap; }
@media (max-width: 760px){
  .ivm-hero-featured .grid{ grid-template-columns: 1fr; }
  .ivm-hero-featured .cover{ max-width:280px; margin:0 auto; }
}

/* Card surfaces stand out on cream */
.ivm-article-card{ background:var(--ivm-surface); }
.ivm-issue-cover{ background:var(--ivm-surface); }

/* Subtle band heading polish */
.ivm-section-head h2{ margin-top:.2rem; }

/* =========================================================
   v1.3 — Customizer color schemes + About band
   ========================================================= */
.ivm-about-band{ background:var(--ivm-surface-alt); }
.ivm-about-grid{
  display:grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 4vw, 3.5rem);
  align-items:center;
}
.ivm-about-img img{
  width:100%; height:auto; border-radius:var(--ivm-radius-lg);
  box-shadow: 0 18px 40px -22px rgba(0,0,0,.25);
  object-fit:cover; aspect-ratio: 4/3;
}
.ivm-about-grid .kicker{
  font-size:.74rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ivm-accent); font-weight:700; margin-bottom:.6rem;
}
.ivm-about-grid h2{ margin:0 0 1rem; }
.ivm-about-grid p{ color:var(--ivm-muted); margin-bottom:1.5rem; }

@media (max-width: 820px){
  .ivm-about-grid{ grid-template-columns:1fr; text-align:center; }
}

/* Dark scheme contrast tweaks */
body{ background:var(--ivm-bg); color:var(--ivm-text); }
.ivm-article-card, .ivm-editor, .ivm-issue-block, .ivm-form, .ivm-success-card{
  background:var(--ivm-surface);
}

/* Editable WP-page content rendered on landing */
.ivm-editable-content .ivm-prose{
  font-size:1.05rem; line-height:1.75; color:var(--ivm-text);
}
.ivm-editable-content .ivm-prose h2{ font-family:var(--ivm-font-display); font-size:1.6rem; margin:1.5rem 0 .75rem; }
.ivm-editable-content .ivm-prose h3{ font-family:var(--ivm-font-display); font-size:1.25rem; margin:1.25rem 0 .5rem; }
.ivm-editable-content .ivm-prose p{ margin:0 0 1rem; }
.ivm-editable-content .ivm-prose a{ color:var(--ivm-accent, #143228); text-decoration:underline; }
.ivm-editable-content .ivm-prose img{ max-width:100%; height:auto; border-radius:var(--ivm-radius-lg); margin:1rem 0; }
.ivm-editable-content .ivm-prose ul, .ivm-editable-content .ivm-prose ol{ margin:0 0 1rem 1.25rem; }

/* =========================================================
   v1.6 — Academic restructure: brand, CFP, Editorial Msg,
   Journal Info, Latest list, Footer CTA, Submit form polish
   ========================================================= */

/* Brand link in header */
.ivm-brand{ text-decoration:none; color:var(--ivm-text); display:flex; align-items:center; gap:.75rem; }
.ivm-brand:hover{ text-decoration:none; }
.ivm-brand img{ max-height:52px; width:auto; }

/* Headings use Merriweather */
h1,h2,h3,h4{ font-family:var(--ivm-font-display); font-weight:700; letter-spacing:-.005em; }

/* Call for Papers band */
.ivm-cfp .ivm-cfp-card{
  display:grid; grid-template-columns: 1.4fr 1fr; gap:2rem; align-items:center;
  background: linear-gradient(135deg, var(--ivm-accent), var(--ivm-accent-hover));
  color:#fff; padding: clamp(2rem, 4vw, 3rem);
  border-radius: var(--ivm-radius-lg);
  box-shadow: 0 24px 60px -28px rgba(27,94,32,.55);
}
.ivm-cfp .ivm-cfp-card .kicker{
  color: var(--ivm-gold); font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; font-size:.74rem; margin-bottom:.6rem;
}
.ivm-cfp .ivm-cfp-card h2{ color:#fff; margin:0 0 .8rem; font-size:clamp(1.6rem,2.6vw,2.1rem); }
.ivm-cfp .ivm-cfp-card p{ color:rgba(255,255,255,.88); margin:0; font-size:1.02rem; }
.ivm-cfp-cta{ display:flex; flex-direction:column; gap:.6rem; align-items:flex-start; }
.ivm-cfp-cta .ivm-btn-primary{ background:var(--ivm-gold); color:#1a1300; }
.ivm-cfp-cta .ivm-btn-primary:hover{ background:#b08c1e; color:#1a1300; }
.ivm-cfp-cta .ivm-btn-outline{ color:#fff; border-color:rgba(255,255,255,.55); }
.ivm-cfp-cta .ivm-btn-outline:hover{ background:rgba(255,255,255,.1); color:#fff; border-color:#fff; }
@media (max-width: 760px){ .ivm-cfp .ivm-cfp-card{ grid-template-columns:1fr; } }

/* Latest publications list */
.ivm-latest-list{
  list-style:none; padding:0; margin:0;
  max-width:880px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:1.25rem;
}
.ivm-latest-list li{
  background:#fff; border:1px solid var(--ivm-border);
  border-radius: var(--ivm-radius); padding:1.1rem 1.25rem;
  border-left:3px solid var(--ivm-gold);
}
.ivm-latest-list .meta{ font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; color:var(--ivm-muted); margin-bottom:.3rem; }
.ivm-latest-list h3{ font-size:1rem; margin:0; line-height:1.4; }
.ivm-latest-list h3 a{ color:var(--ivm-text); }
.ivm-latest-list h3 a:hover{ color:var(--ivm-accent); text-decoration:none; }
@media (max-width: 700px){ .ivm-latest-list{ grid-template-columns:1fr; } }

/* Editorial Message */
.ivm-editorial-msg .ivm-quote-card{
  max-width:780px; margin:0 auto; text-align:center;
  background:#fff; border:1px solid var(--ivm-border);
  border-top:4px solid var(--ivm-gold);
  border-radius: var(--ivm-radius-lg);
  padding: clamp(2rem, 4vw, 3rem);
  box-shadow: var(--ivm-shadow);
}
.ivm-quote-card .kicker{
  font-size:.74rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ivm-accent); font-weight:700; margin-bottom:1rem;
}
.ivm-quote-card blockquote{
  font-family: var(--ivm-font-display); font-style:italic;
  font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height:1.6;
  color:var(--ivm-text); margin:0 0 1.5rem; quotes:"\201C" "\201D";
}
.ivm-quote-card blockquote::before{ content: open-quote; color:var(--ivm-gold); font-size:2rem; line-height:0; vertical-align:-.4em; margin-right:.15em; }
.ivm-quote-sig{ margin-bottom:1.5rem; }
.ivm-quote-sig strong{ display:block; font-family:var(--ivm-font-display); font-size:1rem; color:var(--ivm-text); }
.ivm-quote-sig span{ color:var(--ivm-muted); font-size:.88rem; }

/* Journal Information grid */
.ivm-info-grid{
  display:grid; grid-template-columns: repeat(3, 1fr); gap:1.25rem;
  max-width:960px; margin:0 auto;
}
.ivm-info-card{
  background:#fff; border:1px solid var(--ivm-border);
  border-radius: var(--ivm-radius-lg); padding:1.5rem;
  text-align:center;
}
.ivm-info-card .label{
  font-size:.72rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--ivm-muted); font-weight:600; margin-bottom:.6rem;
}
.ivm-info-card .value{
  font-family:var(--ivm-font-display); font-weight:700;
  font-size:1.1rem; color:var(--ivm-accent);
}
.ivm-info-card .value a{ color:var(--ivm-accent); }
@media (max-width: 760px){ .ivm-info-grid{ grid-template-columns:1fr; } }

/* Footer CTA band */
.ivm-footer-cta{
  background: linear-gradient(135deg, var(--ivm-accent), var(--ivm-accent-hover));
  color:#fff; text-align:center;
}
.ivm-footer-cta h2{ color:#fff; font-size: clamp(1.8rem, 3vw, 2.4rem); margin:0 0 .8rem; }
.ivm-footer-cta p{ color:rgba(255,255,255,.88); max-width:560px; margin:0 auto 1.5rem; font-size:1.05rem; }
.ivm-footer-cta .ctas{ display:flex; justify-content:center; gap:.7rem; flex-wrap:wrap; }

/* Form: checkbox row */
.ivm-form .ivm-checkbox{ background:var(--ivm-accent-soft); padding:1rem 1.1rem; border-radius:var(--ivm-radius); border:1px solid var(--ivm-accent); }
.ivm-form .ivm-checkbox label{ display:flex; gap:.7rem; align-items:flex-start; font-weight:400; font-size:.92rem; line-height:1.5; cursor:pointer; }
.ivm-form .ivm-checkbox input[type=checkbox]{ margin-top:.25rem; transform:scale(1.15); }
.ivm-form .ivm-checkbox span strong{ color:var(--ivm-accent-hover); }

/* Even/odd alt banding override now using clean bg */
.ivm-section{ background:var(--ivm-bg); }
.ivm-section.ivm-about-band{ background:var(--ivm-surface-alt); }
.ivm-section:nth-of-type(even):not(.ivm-cfp):not(.ivm-footer-cta):not(.ivm-editorial-msg){ background:var(--ivm-bg); }

/* Sticky header refinement */
.ivm-site-header{ box-shadow: 0 1px 0 rgba(20,40,30,.06); }

/* Brand text fallback */
.ivm-brand-text{ font-family:var(--ivm-font-display); font-weight:700; font-size:1.05rem; color:var(--ivm-text); }
.ivm-brand-text small{ display:block; font-family:var(--ivm-font-body); font-weight:400; font-size:.7rem; color:var(--ivm-muted); letter-spacing:.14em; text-transform:uppercase; }

/* =========================================================
   ARCHIVE PAGE (v1.7) — Journal-style year + volume archive
   ========================================================= */
.ivm-archive-page{ max-width:1180px; margin:0 auto; padding:0 1rem; }
.ivm-archive-filters{ background:#fff; border:1px solid var(--ivm-border); border-radius:12px; padding:1.25rem; margin:0 0 2rem; box-shadow:0 2px 10px rgba(20,40,30,.04); }
.ivm-archive-filters .ivm-af-row{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:1rem; margin-bottom:.85rem; }
.ivm-archive-filters .ivm-af-row:last-child{ margin-bottom:0; grid-template-columns:repeat(3, minmax(0,1fr)) auto; align-items:end; }
.ivm-archive-filters label{ display:flex; flex-direction:column; gap:.35rem; font-size:.85rem; color:var(--ivm-muted); font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.ivm-archive-filters input, .ivm-archive-filters select{ width:100%; padding:.65rem .75rem; border:1px solid var(--ivm-border); border-radius:8px; font:inherit; background:#fff; color:var(--ivm-text); }
.ivm-archive-filters input:focus, .ivm-archive-filters select:focus{ outline:2px solid var(--ivm-primary); outline-offset:1px; }
.ivm-archive-filters .ivm-af-actions{ display:flex; gap:.5rem; }
@media (max-width: 780px){
  .ivm-archive-filters .ivm-af-row,
  .ivm-archive-filters .ivm-af-row:last-child{ grid-template-columns:1fr; }
}

.ivm-arch-section{ margin:2.5rem 0; }
.ivm-arch-head{ text-align:center; margin-bottom:1.5rem; }
.ivm-arch-head .kicker{ font-size:.75rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ivm-accent); font-weight:700; }
.ivm-arch-head h2{ font-family:var(--ivm-font-display); font-size:1.85rem; margin:.4rem 0 0; color:var(--ivm-text); }
.ivm-arch-group{ margin:1.75rem 0; }
.ivm-arch-group-title{ font-family:var(--ivm-font-display); font-size:1.35rem; color:var(--ivm-primary); border-bottom:2px solid var(--ivm-accent); padding-bottom:.4rem; margin:0 0 1rem; }
.ivm-arch-group-title .count{ color:var(--ivm-muted); font-weight:400; font-size:.85rem; }

.ivm-issue-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:1.5rem; }
.ivm-issue-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--ivm-border); border-radius:14px; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; }
.ivm-issue-card:hover{ transform:translateY(-3px); box-shadow:0 10px 30px rgba(20,40,30,.10); }
.ivm-issue-cover{ display:block; aspect-ratio:3/4; background:#f0eee6; overflow:hidden; }
.ivm-issue-cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.ivm-issue-cover .cover-fallback{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(180deg, var(--ivm-primary), #0d3b10); color:#fff; font-family:var(--ivm-font-display); padding:1rem; text-align:center; }
.ivm-issue-body{ padding:1rem 1.1rem 1.2rem; display:flex; flex-direction:column; gap:.5rem; }
.ivm-issue-vol{ font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; color:var(--ivm-accent); font-weight:700; }
.ivm-issue-title-card{ font-family:var(--ivm-font-display); font-size:1.05rem; line-height:1.3; margin:0; }
.ivm-issue-title-card a{ color:var(--ivm-text); text-decoration:none; }
.ivm-issue-title-card a:hover{ color:var(--ivm-primary); }
.ivm-issue-meta{ display:flex; gap:.4rem; font-size:.8rem; color:var(--ivm-muted); }
.ivm-issue-ctas{ display:flex; gap:.5rem; flex-wrap:wrap; margin-top:.4rem; }
.ivm-btn-sm{ padding:.45rem .8rem; font-size:.82rem; }
.ivm-archive-empty{ text-align:center; padding:3rem 1rem; color:var(--ivm-muted); background:#fff; border:1px dashed var(--ivm-border); border-radius:12px; }

/* =========================================================
   CURRENT ISSUE PAGE — distinct from Archive
   ========================================================= */
.ivm-current-issue .ivm-ci-hero{
  display:grid; grid-template-columns:300px 1fr; gap:2.5rem;
  background:linear-gradient(180deg, #faf8f1, #fff);
  border:1px solid var(--ivm-border); border-radius:16px; padding:2rem;
  margin:1.5rem 0 2.5rem;
}
.ivm-ci-cover{ aspect-ratio:3/4; overflow:hidden; border-radius:10px; box-shadow:0 10px 30px rgba(20,40,30,.15); }
.ivm-ci-cover img{ width:100%; height:100%; object-fit:cover; display:block; }
.ivm-ci-cover .cover-fallback{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(180deg, var(--ivm-primary), #0d3b10); color:#fff; font-family:var(--ivm-font-display); padding:1rem; text-align:center; }
.ivm-ci-meta .ivm-eyebrow{ display:inline-block; font-size:.75rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ivm-accent); font-weight:700; margin-bottom:.5rem; }
.ivm-ci-vol{ font-size:.95rem; color:var(--ivm-muted); margin-bottom:.5rem; }
.ivm-ci-meta h1{ font-family:var(--ivm-font-display); font-size:2.2rem; line-height:1.2; margin:.25rem 0 1rem; color:var(--ivm-text); }
.ivm-ci-stats{ margin:.5rem 0 1rem; color:var(--ivm-text); }
.ivm-ci-stats strong{ font-size:1.5rem; color:var(--ivm-primary); }
.ivm-ci-ctas{ display:flex; gap:.6rem; flex-wrap:wrap; }
@media (max-width: 780px){ .ivm-current-issue .ivm-ci-hero{ grid-template-columns:1fr; } .ivm-ci-cover{ max-width:260px; margin:0 auto; } }

.ivm-ci-editorial, .ivm-ci-overview, .ivm-ci-toc{
  background:#fff; border:1px solid var(--ivm-border); border-radius:14px; padding:1.75rem 2rem; margin:1.25rem 0;
}
.ivm-ci-editorial .kicker, .ivm-ci-overview .kicker, .ivm-ci-toc .kicker{
  font-size:.75rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ivm-accent); font-weight:700; margin-bottom:.5rem;
}
.ivm-ci-toc h2{ font-family:var(--ivm-font-display); margin:.25rem 0 1.25rem; color:var(--ivm-text); }
.ivm-toc-list{ list-style:none; padding:0; margin:0; counter-reset:toc; }
.ivm-toc-list li{ display:grid; grid-template-columns:48px 1fr; gap:1rem; padding:1rem 0; border-top:1px solid var(--ivm-border); }
.ivm-toc-list li:first-child{ border-top:0; }
.toc-num{ font-family:var(--ivm-font-display); color:var(--ivm-accent); font-size:1.4rem; font-weight:700; }
.toc-body h3{ font-family:var(--ivm-font-display); font-size:1.15rem; margin:0 0 .25rem; }
.toc-body h3 a{ color:var(--ivm-text); text-decoration:none; }
.toc-body h3 a:hover{ color:var(--ivm-primary); }
.toc-authors{ font-size:.85rem; color:var(--ivm-muted); font-style:italic; margin-bottom:.3rem; }
.toc-excerpt{ color:var(--ivm-muted); font-size:.92rem; margin:.25rem 0 0; }

/* =========================================================
   v1.8.0 — About intro on homepage + Premium Editorial Board
   ========================================================= */

/* ----- About intro (homepage) ----- */
.ivm-about-intro{
  position:relative;
  background:
    radial-gradient(800px 380px at 12% -10%, rgba(27,94,32,.06), transparent 70%),
    radial-gradient(700px 320px at 100% 110%, rgba(201,162,39,.08), transparent 70%),
    linear-gradient(180deg, #ffffff 0%, #fbfdfa 100%);
  border-top:1px solid var(--ivm-border);
  border-bottom:1px solid var(--ivm-border);
}
.ivm-about-intro-grid{
  display:grid;
  grid-template-columns:5fr 7fr;
  gap:clamp(1.5rem,4vw,3.5rem);
  align-items:center;
}
@media (max-width: 840px){
  .ivm-about-intro-grid{ grid-template-columns:1fr; }
}
.ivm-about-intro-media{
  position:relative;
  border-radius:var(--ivm-radius-lg);
  overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(20,36,27,.35), 0 8px 24px rgba(20,36,27,.08);
  aspect-ratio: 4/5;
  background:linear-gradient(135deg,#1B5E20 0%,#0f3f15 100%);
}
.ivm-about-intro-media img{ width:100%; height:100%; object-fit:cover; }
.ivm-about-intro-placeholder{
  position:absolute; inset:0;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:.75rem; color:#fff;
  background:
    radial-gradient(circle at 30% 20%, rgba(201,162,39,.25), transparent 55%),
    radial-gradient(circle at 70% 80%, rgba(255,255,255,.10), transparent 55%),
    linear-gradient(135deg,#1B5E20 0%,#0f3f15 100%);
}
.ivm-about-intro-placeholder::before{
  content:""; position:absolute; inset:14px;
  border:1px solid rgba(255,255,255,.18); border-radius:calc(var(--ivm-radius-lg) - 4px);
  pointer-events:none;
}
.ivm-about-mark{
  font-family:var(--ivm-font-display);
  font-weight:900;
  font-size:clamp(3rem, 8vw, 5.5rem);
  letter-spacing:.04em;
  color:var(--ivm-gold);
  text-shadow:0 2px 24px rgba(0,0,0,.25);
}
.ivm-about-issn{
  font-family:var(--ivm-font-body);
  font-size:.8rem; letter-spacing:.18em; text-transform:uppercase;
  color:rgba(255,255,255,.85);
  padding:.4rem .8rem; border:1px solid rgba(255,255,255,.3); border-radius:999px;
}
.ivm-about-intro-body .kicker{
  display:inline-block; font-size:.78rem; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ivm-accent);
  font-weight:700; margin-bottom:.75rem;
}
.ivm-about-intro-body h2{ margin-bottom:.6rem; }
.ivm-about-intro-body .ivm-about-issn-inline{
  display:inline-block; font-size:.55em; vertical-align:middle;
  font-family:var(--ivm-font-body); font-weight:600;
  color:var(--ivm-muted); letter-spacing:.04em; margin-left:.4rem;
}
.ivm-about-intro-body .lead{
  font-size:1.08rem; color:var(--ivm-muted); margin-bottom:1.25rem;
}
.ivm-about-intro-meta{
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:.75rem; margin:1.25rem 0 1.5rem;
}
@media (max-width: 540px){
  .ivm-about-intro-meta{ grid-template-columns:1fr; }
}
.ivm-about-intro-meta > div{
  padding:.75rem .9rem;
  background:#fff;
  border:1px solid var(--ivm-border);
  border-radius:var(--ivm-radius);
  box-shadow:0 1px 2px rgba(0,0,0,.03);
}
.ivm-about-intro-meta .label{
  display:block; font-size:.72rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--ivm-muted); font-weight:600;
}
.ivm-about-intro-meta .value{
  display:block; font-weight:700; color:var(--ivm-text); margin-top:.15rem;
}

/* ----- Premium Editorial Board ----- */
.ivm-board-page-wrap{
  position:relative;
  isolation:isolate;
  background:linear-gradient(180deg, #f7fbf6 0%, #ffffff 60%, #fbfdfa 100%);
  overflow:hidden;
}
.ivm-board-bg{
  position:absolute; inset:0; z-index:-1; pointer-events:none;
}
.ivm-board-bg .orb{
  position:absolute; border-radius:50%; filter:blur(80px); opacity:.55;
}
.ivm-board-bg .orb-a{ width:520px; height:520px; left:-120px; top:-120px;
  background:radial-gradient(circle, rgba(27,94,32,.35), transparent 60%); }
.ivm-board-bg .orb-b{ width:600px; height:600px; right:-180px; top:25%;
  background:radial-gradient(circle, rgba(201,162,39,.30), transparent 60%); }
.ivm-board-bg .orb-c{ width:480px; height:480px; left:30%; bottom:-180px;
  background:radial-gradient(circle, rgba(27,94,32,.20), transparent 60%); }
.ivm-board-bg .grid{
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(20,36,27,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(20,36,27,.05) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
}

.ivm-board-page{ padding:clamp(3rem,6vw,5rem) 0; }

.ivm-board-hero{
  text-align:center;
  max-width:780px; margin:0 auto clamp(2.5rem,5vw,4rem);
}
.ivm-board-hero .kicker{
  display:inline-block;
  font-size:.78rem; letter-spacing:.22em; text-transform:uppercase;
  font-weight:700; color:var(--ivm-accent);
  padding:.45rem 1rem;
  background:rgba(255,255,255,.6);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(27,94,32,.18);
  border-radius:999px;
  margin-bottom:1.2rem;
}
.ivm-board-hero h1{ margin-bottom:.6rem; }
.ivm-board-hero .lead{ font-size:1.1rem; color:var(--ivm-muted); }

.ivm-board-tier{ margin-bottom:clamp(2.5rem,5vw,4rem); }
.ivm-board-tier-head{
  display:flex; align-items:center; gap:.85rem;
  margin-bottom:1.5rem;
}
.ivm-board-tier-head .bar{
  display:inline-block; width:36px; height:3px;
  background:linear-gradient(90deg, var(--ivm-accent), var(--ivm-gold));
  border-radius:999px;
}
.ivm-board-tier-head h2{
  margin:0;
  font-size:clamp(1.25rem, 2vw, 1.6rem);
  letter-spacing:-.01em;
}
.ivm-board-tier.is-featured .ivm-board-tier-head h2{
  background:linear-gradient(90deg, var(--ivm-accent), #2a7d31 60%, var(--ivm-gold));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

.ivm-board-grid{
  display:grid; gap:1.25rem;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
}
.ivm-board-grid--featured{
  grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));
  gap:1.5rem;
}

.ivm-board-card{
  position:relative;
  border-radius:var(--ivm-radius-lg);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(20,36,27,.08);
  box-shadow:
    0 1px 0 rgba(255,255,255,.6) inset,
    0 14px 30px -18px rgba(20,36,27,.25);
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  overflow:hidden;
}
.ivm-board-card::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px;
  background:linear-gradient(180deg, var(--ivm-accent), var(--ivm-gold));
  opacity:.0; transition:opacity .35s ease;
}
.ivm-board-card:hover{
  transform:translateY(-4px);
  box-shadow:
    0 1px 0 rgba(255,255,255,.7) inset,
    0 24px 50px -22px rgba(20,36,27,.35);
  border-color:rgba(27,94,32,.22);
}
.ivm-board-card:hover::before{ opacity:1; }

.ivm-board-card.is-featured{
  background:
    linear-gradient(135deg, rgba(27,94,32,.06), rgba(201,162,39,.05)),
    rgba(255,255,255,.85);
  border-color:rgba(201,162,39,.35);
  box-shadow:
    0 1px 0 rgba(255,255,255,.7) inset,
    0 22px 50px -22px rgba(20,36,27,.35);
}
.ivm-board-card.is-featured::before{ opacity:1; width:4px; }

.ivm-board-card-inner{
  display:flex; gap:1rem; align-items:center;
  padding:1.1rem 1.2rem;
}
.ivm-board-grid--featured .ivm-board-card-inner{
  flex-direction:column; align-items:flex-start;
  padding:1.5rem 1.4rem;
  gap:1rem;
}

.ivm-board-avatar{
  flex:0 0 auto;
  width:56px; height:56px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--ivm-font-display);
  font-weight:700; font-size:1.1rem; color:#fff;
  background:linear-gradient(135deg, var(--ivm-accent) 0%, #2a7d31 100%);
  box-shadow:0 6px 18px -6px rgba(27,94,32,.6);
  border:2px solid rgba(255,255,255,.9);
  letter-spacing:.02em;
}
.ivm-board-grid--featured .ivm-board-avatar{
  width:72px; height:72px; font-size:1.4rem;
  background:linear-gradient(135deg, var(--ivm-accent) 0%, #1B5E20 50%, var(--ivm-gold) 130%);
}
.ivm-board-meta{ min-width:0; }
.ivm-board-meta .name{
  margin:0 0 .2rem;
  font-size:1.05rem; line-height:1.25;
  font-family:var(--ivm-font-display); font-weight:700;
  color:var(--ivm-text);
}
.ivm-board-grid--featured .ivm-board-meta .name{ font-size:1.2rem; }
.ivm-board-meta .role{
  font-size:.82rem; letter-spacing:.06em; text-transform:uppercase;
  font-weight:600; color:var(--ivm-accent);
}
.ivm-board-meta .aff{
  margin-top:.35rem;
  font-size:.88rem; color:var(--ivm-muted); line-height:1.4;
}

/* =========================================================
   v1.9.0 — Editorial Board (premium redesign)
   ========================================================= */
:root{
  --eb-primary:#005A9C;
  --eb-secondary:#2E7D32;
  --eb-accent:#F4B400;
  --eb-bg:#F8FAFC;
  --eb-text:#1E293B;
  --eb-muted:#64748B;
  --eb-border:rgba(15,23,42,.08);
  --eb-shadow-sm:0 1px 2px rgba(15,23,42,.05),0 1px 3px rgba(15,23,42,.06);
  --eb-shadow-md:0 8px 24px -10px rgba(15,23,42,.18);
  --eb-shadow-lg:0 24px 60px -20px rgba(0,90,156,.30);
  --eb-radius:14px;
}
.ivm-eb-wrap{background:var(--eb-bg);color:var(--eb-text);}
.ivm-eb-wrap *{box-sizing:border-box;}

/* Hero */
.ivm-eb-hero{position:relative;overflow:hidden;padding:5rem 0 4rem;text-align:center;background:linear-gradient(180deg,#fff 0%,#F1F5F9 100%);}
.ivm-eb-hero-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(0,90,156,.10) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);opacity:.55;pointer-events:none;}
.ivm-eb-kicker{display:inline-block;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--eb-primary);font-weight:600;margin-bottom:.9rem;}
.ivm-eb-title{font-family:'Merriweather',Georgia,serif;font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.1;margin:0 0 1rem;color:var(--eb-text);font-weight:700;}
.ivm-eb-title span{color:var(--eb-primary);}
.ivm-eb-lead{max-width:680px;margin:0 auto;font-size:1.05rem;line-height:1.65;color:var(--eb-muted);}

/* Sticky toolbar */
.ivm-eb-toolbar-stick{position:sticky;top:64px;z-index:30;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--eb-border);}
.ivm-eb-toolbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;padding:.85rem 0;}
.ivm-eb-search{flex:1 1 240px;display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--eb-border);border-radius:10px;padding:.55rem .8rem;color:var(--eb-muted);box-shadow:var(--eb-shadow-sm);}
.ivm-eb-search input{flex:1;border:0;outline:0;background:transparent;font-size:.95rem;color:var(--eb-text);min-width:0;}
.ivm-eb-select{background:#fff;border:1px solid var(--eb-border);border-radius:10px;padding:.6rem .8rem;font-size:.9rem;color:var(--eb-text);box-shadow:var(--eb-shadow-sm);min-width:160px;}
.ivm-eb-reset{background:var(--eb-primary);color:#fff;border:0;border-radius:10px;padding:.6rem 1rem;font-weight:600;font-size:.85rem;cursor:pointer;transition:transform .2s ease,background .2s ease;}
.ivm-eb-reset:hover{background:#004680;transform:translateY(-1px);}
.ivm-eb-empty{text-align:center;color:var(--eb-muted);padding:2rem 0;font-style:italic;}

/* Sections */
.ivm-eb-section{padding:4rem 0;}
.ivm-eb-section--advisory{background:#fff;}
.ivm-eb-section--international{background:linear-gradient(135deg,#EFF6FF 0%,#F0FDF4 60%,#FEF3C7 100%);}
.ivm-eb-h2{font-family:'Merriweather',Georgia,serif;font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:700;color:var(--eb-text);margin:0 0 2.5rem;position:relative;}
.ivm-eb-h2--center{text-align:center;}
.ivm-eb-h2 span{position:relative;display:inline-block;padding-bottom:.6rem;}
.ivm-eb-h2 span::after{content:"";position:absolute;left:50%;bottom:0;width:0;height:3px;background:linear-gradient(90deg,var(--eb-primary),var(--eb-accent));border-radius:3px;transform:translateX(-50%);animation:ebUnderline .8s ease forwards;animation-delay:.15s;}
@keyframes ebUnderline{to{width:64px;}}
.ivm-eb-h3{font-family:'Merriweather',Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--eb-secondary);margin:2rem 0 1.2rem;padding-left:.85rem;border-left:3px solid var(--eb-accent);}

/* Grids */
.ivm-eb-leadership-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;max-width:880px;margin:0 auto;}
.ivm-eb-grid{display:grid;gap:1.5rem;}
.ivm-eb-grid--3{grid-template-columns:repeat(3,1fr);}
.ivm-eb-grid--4{grid-template-columns:repeat(4,1fr);}
@media (max-width:980px){.ivm-eb-grid--3,.ivm-eb-grid--4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.ivm-eb-grid--3,.ivm-eb-grid--4{grid-template-columns:1fr;}}

/* Card base */
.ivm-eb-card{position:relative;background:#fff;border:1px solid var(--eb-border);border-radius:var(--eb-radius);padding:1.6rem 1.3rem;text-align:center;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;box-shadow:var(--eb-shadow-sm);outline:none;animation:ebFadeUp .55s ease both;}
@keyframes ebFadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
.ivm-eb-card:hover,.ivm-eb-card:focus-visible{transform:translateY(-8px);box-shadow:var(--eb-shadow-md);border-color:rgba(0,90,156,.30);}
.ivm-eb-card:hover .ivm-eb-name,.ivm-eb-card:focus-visible .ivm-eb-name{color:var(--eb-primary);}
.ivm-eb-card:hover .ivm-eb-photo,.ivm-eb-card:focus-visible .ivm-eb-photo{transform:scale(1.04);}
.ivm-eb-card:hover .ivm-eb-view,.ivm-eb-card:focus-visible .ivm-eb-view{opacity:1;transform:translateY(0);}

.ivm-eb-photo-wrap{width:120px;height:120px;margin:0 auto 1rem;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#E2E8F0,#CBD5E1);box-shadow:0 6px 18px -8px rgba(15,23,42,.25);}
.ivm-eb-photo{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.ivm-eb-photo--initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--eb-primary),#2E7D32);color:#fff;font-weight:700;font-size:1.8rem;letter-spacing:.05em;}
.ivm-eb-name{font-family:'Merriweather',Georgia,serif;font-size:1.08rem;margin:0 0 .35rem;color:var(--eb-text);transition:color .3s ease;line-height:1.3;}
.ivm-eb-role{font-size:.82rem;font-weight:600;color:var(--eb-primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.45rem;}
.ivm-eb-aff{font-size:.88rem;color:var(--eb-text);margin-bottom:.3rem;line-height:1.45;}
.ivm-eb-country{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--eb-muted);margin-top:.2rem;}
.ivm-eb-pin{color:var(--eb-accent);}
.ivm-eb-actions{display:flex;align-items:center;justify-content:center;gap:.6rem;margin-top:1rem;}
.ivm-eb-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#F1F5F9;color:var(--eb-primary);text-decoration:none;transition:background .2s ease,transform .2s ease;}
.ivm-eb-icon:hover{background:var(--eb-primary);color:#fff;transform:translateY(-2px);}
.ivm-eb-view{background:transparent;border:1px solid var(--eb-primary);color:var(--eb-primary);padding:.4rem .85rem;font-size:.78rem;font-weight:600;border-radius:8px;cursor:pointer;opacity:.85;transition:opacity .25s ease,background .25s ease,color .25s ease,transform .25s ease;}
@media (hover:hover){.ivm-eb-view{opacity:0;transform:translateY(4px);}}
.ivm-eb-view:hover{background:var(--eb-primary);color:#fff;}

/* Leadership variant — premium featured */
.ivm-eb-card--leadership{padding:2.3rem 1.6rem;border:1px solid rgba(0,90,156,.18);background:
  linear-gradient(180deg,#fff 0%,#F8FAFC 100%);
  box-shadow:var(--eb-shadow-md);}
.ivm-eb-card--leadership::before{content:"";position:absolute;inset:0;border-radius:var(--eb-radius);padding:1px;background:linear-gradient(135deg,var(--eb-primary),var(--eb-accent),var(--eb-secondary));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s ease;pointer-events:none;}
.ivm-eb-card--leadership:hover::before,.ivm-eb-card--leadership:focus-visible::before{opacity:1;}
.ivm-eb-card--leadership:hover,.ivm-eb-card--leadership:focus-visible{transform:translateY(-10px);box-shadow:var(--eb-shadow-lg);}
.ivm-eb-card--leadership .ivm-eb-photo-wrap{width:170px;height:170px;}
.ivm-eb-card--leadership .ivm-eb-name{font-size:1.45rem;margin-bottom:.5rem;}
.ivm-eb-card--leadership .ivm-eb-role{font-size:.9rem;color:var(--eb-accent);}

/* Compact variant for advisory grids */
.ivm-eb-card--compact{padding:1.3rem 1rem;}
.ivm-eb-card--compact .ivm-eb-photo-wrap{width:92px;height:92px;}
.ivm-eb-card--compact .ivm-eb-name{font-size:.98rem;}
.ivm-eb-card--compact .ivm-eb-role{display:none;}

/* Modal */
.ivm-eb-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;}
.ivm-eb-modal[hidden]{display:none;}
.ivm-eb-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55);backdrop-filter:blur(4px);animation:ebFade .25s ease;}
.ivm-eb-modal-card{position:relative;background:#fff;border-radius:18px;max-width:560px;width:100%;padding:2rem;box-shadow:0 30px 80px -20px rgba(0,0,0,.4);animation:ebPop .3s cubic-bezier(.2,.9,.3,1.2);max-height:90vh;overflow-y:auto;}
@keyframes ebFade{from{opacity:0;}to{opacity:1;}}
@keyframes ebPop{from{opacity:0;transform:translateY(20px) scale(.96);}to{opacity:1;transform:translateY(0) scale(1);}}
.ivm-eb-modal-close{position:absolute;top:12px;right:14px;background:transparent;border:0;font-size:1.8rem;color:var(--eb-muted);cursor:pointer;line-height:1;width:34px;height:34px;border-radius:50%;transition:background .2s ease;}
.ivm-eb-modal-close:hover{background:#F1F5F9;color:var(--eb-text);}
.ivm-eb-modal-head{display:flex;gap:1.2rem;align-items:center;margin-bottom:1.3rem;}
.ivm-eb-modal-photo{width:108px;height:108px;border-radius:50%;background:linear-gradient(135deg,var(--eb-primary),var(--eb-secondary));background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.6rem;flex-shrink:0;}
.ivm-eb-modal-name{font-family:'Merriweather',Georgia,serif;font-size:1.35rem;margin:0 0 .35rem;}
.ivm-eb-modal-role{font-size:.85rem;font-weight:600;color:var(--eb-primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.3rem;}
.ivm-eb-modal-aff{font-size:.9rem;color:var(--eb-text);}
.ivm-eb-modal-country{font-size:.82rem;color:var(--eb-muted);margin-top:.2rem;}
.ivm-eb-modal-bio{font-size:.95rem;line-height:1.65;color:var(--eb-text);padding:1rem 0;border-top:1px solid var(--eb-border);}
.ivm-eb-modal-bio:empty{display:none;}
.ivm-eb-modal-foot{display:flex;flex-wrap:wrap;gap:.6rem;padding-top:.5rem;border-top:1px solid var(--eb-border);}
.ivm-eb-modal-foot a{display:inline-flex;align-items:center;gap:.4rem;background:#F1F5F9;color:var(--eb-primary);text-decoration:none;padding:.5rem .9rem;border-radius:8px;font-size:.85rem;font-weight:600;transition:background .2s ease,color .2s ease;}
.ivm-eb-modal-foot a:hover{background:var(--eb-primary);color:#fff;}

@media (prefers-reduced-motion:reduce){
  .ivm-eb-card,.ivm-eb-h2 span::after,.ivm-eb-modal-card,.ivm-eb-modal-backdrop{animation:none !important;transition:none !important;}
}

/* ===========================================================
 * APC Submission System (v2.0)
 * =========================================================== */
.ivm-apc-page { padding-bottom: 4rem; }
.ivm-apc-table { background:#fff; border:1px solid #e2e8f0; border-radius:14px; padding:28px; margin:24px 0 32px; box-shadow:0 4px 16px rgba(15,23,42,.04); }
.ivm-apc-table h2 { margin:0 0 18px; font-size:1.4rem; color:#0f172a; }
.ivm-apc-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px; }
.ivm-apc-card { border:1px solid #e2e8f0; border-radius:10px; padding:16px; background:linear-gradient(180deg,#fff,#f8fafc); transition:transform .15s, box-shadow .15s, border-color .15s; }
.ivm-apc-card:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(15,23,42,.08); border-color:#0f172a; }
.ivm-apc-card.is-selected { border-color:#0f172a; box-shadow:0 0 0 2px #0f172a inset; }
.ivm-apc-name { font-weight:700; color:#0f172a; font-size:.95rem; min-height:42px; }
.ivm-apc-price { font-size:1.5rem; font-weight:800; color:#0f172a; margin:8px 0 6px; }
.ivm-apc-price span { font-size:.75rem; font-weight:500; color:#64748b; margin-left:2px; }
.ivm-apc-limits { list-style:none; padding:0; margin:0; font-size:.8rem; color:#475569; }
.ivm-apc-limits li:before { content:"✓ "; color:#16a34a; }
.ivm-apc-card--member { background:linear-gradient(135deg,#fef3c7,#fde68a); border-color:#f59e0b; }
.ivm-apc-card--member .ivm-apc-price { color:#92400e; }
.ivm-apc-notice { margin:18px 0 0; padding:12px 14px; background:#fef3c7; border-left:4px solid #f59e0b; color:#92400e; font-size:.88rem; border-radius:6px; }

/* Steps */
.ivm-steps { list-style:none; padding:0; margin:0 0 28px; display:flex; gap:8px; flex-wrap:wrap; counter-reset:s; }
.ivm-steps li { flex:1; min-width:140px; padding:14px 12px; background:#f1f5f9; border-radius:8px; color:#64748b; font-size:.85rem; font-weight:600; display:flex; align-items:center; gap:10px; border:1px solid transparent; transition:all .2s; }
.ivm-steps li span { display:inline-flex; width:26px; height:26px; border-radius:50%; background:#cbd5e1; color:#fff; align-items:center; justify-content:center; font-weight:700; font-size:.8rem; }
.ivm-steps li.active { background:#0f172a; color:#fff; border-color:#0f172a; }
.ivm-steps li.active span { background:#f59e0b; color:#0f172a; }
.ivm-steps li.done { background:#dcfce7; color:#166534; }
.ivm-steps li.done span { background:#16a34a; }

.ivm-apc-form .ivm-step { background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:28px; margin-bottom:18px; }
.ivm-apc-form .ivm-step h3 { margin:0 0 18px; color:#0f172a; font-size:1.2rem; }
.ivm-cat-info { margin:10px 0 0; padding:10px 14px; background:#eff6ff; border-left:4px solid #2563eb; border-radius:6px; color:#1e3a8a; font-size:.9rem; }
.ivm-step-nav { display:flex; justify-content:space-between; gap:12px; margin-top:24px; }
.ivm-step-nav .ivm-btn { min-width:160px; }

.ivm-radio-group { display:flex; gap:18px; }
.ivm-radio-group label { display:flex; align-items:center; gap:6px; cursor:pointer; }

.ivm-authors-list .ivm-author-row { border:1px dashed #cbd5e1; border-radius:8px; padding:14px; margin-bottom:12px; background:#f8fafc; }
.ivm-author-head { font-weight:700; color:#0f172a; margin-bottom:10px; font-size:.95rem; }

.ivm-pay-summary { background:#0f172a; color:#fff; border-radius:12px; padding:24px; }
.ivm-pay-row { display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px dashed rgba(255,255,255,.15); font-size:.95rem; }
.ivm-pay-row:last-child { border:0; }
.ivm-pay-total { font-size:1.2rem; margin-top:8px; padding-top:16px; border-top:2px solid rgba(255,255,255,.2) !important; }
.ivm-pay-total strong { color:#fbbf24; font-size:1.6rem; }
.ivm-pay-note { margin:14px 0 0; color:#64748b; font-size:.85rem; }

.ivm-alert { padding:12px 16px; border-radius:8px; margin:16px 0; font-size:.92rem; }
.ivm-alert-error { background:#fee2e2; border-left:4px solid #dc2626; color:#7f1d1d; }
.ivm-alert-success { background:#dcfce7; border-left:4px solid #16a34a; color:#14532d; }

/* Confirmation */
.ivm-confirm-card { text-align:center; background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:48px 32px; box-shadow:0 10px 40px rgba(15,23,42,.08); }
.ivm-confirm-icon { width:72px; height:72px; line-height:72px; border-radius:50%; background:#16a34a; color:#fff; font-size:38px; font-weight:700; margin:0 auto 18px; }
.ivm-confirm-card h1 { color:#0f172a; margin:0 0 10px; }
.ivm-confirm-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:16px; margin:24px 0; text-align:left; }
.ivm-confirm-grid > div { background:#f8fafc; padding:14px 16px; border-radius:8px; border:1px solid #e2e8f0; }
.ivm-confirm-grid span { display:block; font-size:.7rem; text-transform:uppercase; letter-spacing:1px; color:#64748b; margin-bottom:4px; }
.ivm-confirm-grid strong { color:#0f172a; font-size:1rem; word-break:break-word; }
.ivm-confirm-actions { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-top:24px; }

/* Author dashboard */
.ivm-dash-card { margin-top:28px; background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:24px; box-shadow:0 4px 16px rgba(15,23,42,.04); }
.ivm-dash-row { display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px dashed #e2e8f0; font-size:.95rem; }
.ivm-dash-row span { color:#64748b; }
.ivm-dash-row strong { color:#0f172a; text-align:right; max-width:60%; word-break:break-word; }
.ivm-status { padding:3px 10px; border-radius:999px; font-size:.78rem; font-weight:700; display:inline-block; }
.ivm-status-new, .ivm-status-submitted { background:#dbeafe; color:#1e40af; }
.ivm-status-under-review { background:#fef3c7; color:#92400e; }
.ivm-status-accepted, .ivm-status-published { background:#dcfce7; color:#166534; }
.ivm-status-rejected { background:#fee2e2; color:#991b1b; }
.ivm-status-revision-requested { background:#fed7aa; color:#9a3412; }

@media (max-width: 640px){
	.ivm-steps li { min-width:auto; padding:10px 8px; font-size:.78rem; }
	.ivm-step-nav { flex-direction:column-reverse; }
	.ivm-step-nav .ivm-btn { width:100%; }
}

/* =========================================================
 * Join Editorial Panel + Application form (v2.1.0)
 * ========================================================= */
.grad-text{
	background:linear-gradient(120deg,#005A9C 0%,#2E7D32 55%,#F4B400 100%);
	-webkit-background-clip:text;background-clip:text;color:transparent;
}
.ivm-eyebrow{display:inline-block;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#005A9C;font-weight:700;margin-bottom:.75rem;}

/* ---- Join Panel hero ---- */
.ivm-join-hero{
	position:relative;overflow:hidden;
	padding:5rem 0 3.5rem;
	background:
		radial-gradient(900px 400px at 10% -10%, rgba(0,90,156,.10), transparent 60%),
		radial-gradient(900px 500px at 110% 10%, rgba(46,125,50,.10), transparent 60%),
		linear-gradient(180deg,#f7faff,#ffffff);
	border-bottom:1px solid rgba(0,0,0,.05);
}
.ivm-join-hero h1{font-family:Merriweather,serif;font-size:clamp(2rem,4vw,3.25rem);line-height:1.1;margin:.25rem 0 1rem;}
.ivm-join-hero .ivm-lede{max-width:760px;color:#475467;font-size:1.1rem;line-height:1.6;}
.ivm-join-orbs{position:absolute;inset:0;pointer-events:none;}
.ivm-join-orbs span{position:absolute;width:280px;height:280px;border-radius:50%;filter:blur(60px);opacity:.35;}
.ivm-join-orbs span:nth-child(1){background:#7CC4FF;top:-90px;right:-60px;}
.ivm-join-orbs span:nth-child(2){background:#9BE3A2;bottom:-120px;left:-60px;}
.ivm-join-orbs span:nth-child(3){background:#FFE08A;top:30%;right:30%;width:180px;height:180px;}

/* ---- Two big choice cards ---- */
.ivm-join-cards{padding:4rem 0 5rem;background:#fff;}
.ivm-join-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.ivm-join-card{
	position:relative;background:#fff;border:1px solid rgba(0,0,0,.06);
	border-radius:20px;padding:2.25rem;box-shadow:0 1px 2px rgba(16,24,40,.04);
	transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;overflow:hidden;
}
.ivm-join-card::before{
	content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;
	background:linear-gradient(135deg,transparent,transparent 60%,rgba(0,90,156,.4));
	-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
	-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s;
}
.ivm-join-card:hover{transform:translateY(-6px);box-shadow:0 24px 60px -24px rgba(0,90,156,.25);}
.ivm-join-card:hover::before{opacity:1;}
.ivm-join-card h2{font-family:Merriweather,serif;margin:.75rem 0 .5rem;}
.ivm-join-icon{
	width:64px;height:64px;border-radius:16px;display:grid;place-items:center;
	background:linear-gradient(135deg,#E8F1FB,#DDF1DF);color:#005A9C;
}
.ivm-join-card--reviewer .ivm-join-icon{background:linear-gradient(135deg,#FFF6DC,#E8F1FB);color:#2E7D32;}
.ivm-join-bullets{margin:1rem 0 1.5rem;padding:0;list-style:none;}
.ivm-join-bullets li{padding:.4rem 0 .4rem 1.5rem;position:relative;color:#475467;font-size:.95rem;}
.ivm-join-bullets li::before{content:"";position:absolute;left:0;top:.85rem;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,#005A9C,#2E7D32);}

.ivm-join-benefits{margin-top:4rem;padding:2.5rem;border-radius:24px;
	background:linear-gradient(135deg,#0b2545 0%,#13315c 100%);color:#e8eefc;
	box-shadow:0 30px 80px -40px rgba(11,37,69,.6);
}
.ivm-join-benefits h3{font-family:Merriweather,serif;color:#fff;margin:0 0 1.5rem;font-size:1.5rem;}
.ivm-join-benefit-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));}
.ivm-join-benefit-grid > div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:1.1rem 1.2rem;border-radius:14px;backdrop-filter:blur(8px);}
.ivm-join-benefit-grid strong{display:block;color:#FFD66B;letter-spacing:.02em;}
.ivm-join-benefit-grid span{display:block;color:#cfd9ef;font-size:.92rem;margin-top:.2rem;}

/* ---- Application form ---- */
.ivm-apply{background:#f7faff;padding-bottom:5rem;}
.ivm-apply-hero{
	padding:4rem 0 2.5rem;
	background:
		radial-gradient(700px 320px at 90% 0%, rgba(46,125,50,.08), transparent 60%),
		radial-gradient(700px 320px at 0% 100%, rgba(0,90,156,.10), transparent 60%),
		linear-gradient(180deg,#ffffff,#f7faff);
	border-bottom:1px solid rgba(0,0,0,.04);
}
.ivm-apply-hero h1{font-family:Merriweather,serif;font-size:clamp(1.75rem,3.4vw,2.75rem);line-height:1.15;margin:.25rem 0 .75rem;}
.ivm-apply-hero .ivm-lede{max-width:680px;color:#475467;line-height:1.6;}
.ivm-apply-back{display:inline-flex;align-items:center;gap:.35rem;color:#005A9C;font-weight:600;text-decoration:none;margin-bottom:1rem;font-size:.92rem;}
.ivm-apply-back:hover{text-decoration:underline;}

.ivm-apply-steps{
	display:flex;gap:.5rem;list-style:none;margin:2rem 0 0;padding:0;flex-wrap:wrap;
}
.ivm-apply-steps li{
	flex:1;min-width:140px;background:#fff;border:1px solid rgba(0,0,0,.06);
	padding:.85rem 1rem;border-radius:14px;display:flex;align-items:center;gap:.6rem;
	color:#667085;font-size:.9rem;font-weight:600;transition:all .25s;
}
.ivm-apply-steps li span{
	width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
	background:#eef2f7;color:#667085;font-size:.85rem;
}
.ivm-apply-steps li.is-active{background:linear-gradient(135deg,#005A9C,#13315c);color:#fff;border-color:transparent;box-shadow:0 12px 24px -12px rgba(0,90,156,.5);}
.ivm-apply-steps li.is-active span{background:#FFD66B;color:#0b2545;}
.ivm-apply-steps li.is-done{background:#E8F1FB;color:#005A9C;}
.ivm-apply-steps li.is-done span{background:#005A9C;color:#fff;}

.ivm-apply-form{
	margin-top:-1.5rem;
	background:#fff;border-radius:24px;padding:2.5rem;
	box-shadow:0 30px 80px -40px rgba(11,37,69,.25);
	border:1px solid rgba(0,0,0,.05);
	position:relative;z-index:2;
	margin-bottom:2rem;
}
.ivm-apply-step{border:none;margin:0;padding:0;display:none;}
.ivm-apply-step.is-active{display:block;animation:ivmFade .35s ease both;}
@keyframes ivmFade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.ivm-apply-step legend{
	font-family:Merriweather,serif;font-size:1.3rem;font-weight:700;color:#0b2545;
	display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;
}
.ivm-apply-step legend .num{
	display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;
	background:linear-gradient(135deg,#005A9C,#2E7D32);color:#fff;font-size:.9rem;font-family:Inter,sans-serif;
}
.ivm-apply-form .grid-2{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
.ivm-apply-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600;color:#344054;}
.ivm-apply-form label.full{grid-column:1/-1;}
.ivm-apply-form input,
.ivm-apply-form select,
.ivm-apply-form textarea{
	font-family:inherit;font-size:.95rem;font-weight:400;color:#101828;
	padding:.7rem .9rem;border:1.5px solid #e4e7ec;border-radius:10px;background:#fff;
	transition:border-color .15s,box-shadow .15s;
}
.ivm-apply-form input:focus,
.ivm-apply-form select:focus,
.ivm-apply-form textarea:focus{
	outline:none;border-color:#005A9C;box-shadow:0 0 0 4px rgba(0,90,156,.12);
}
.ivm-apply-form textarea{resize:vertical;min-height:90px;}
.ivm-apply-form input[type=file]{padding:.5rem;background:#f7faff;cursor:pointer;}
.ivm-apply-form label.checkbox{flex-direction:row;align-items:flex-start;gap:.6rem;font-weight:500;color:#475467;margin-top:1rem;padding:1rem;background:#f7faff;border-radius:10px;border:1px solid #eef2f7;}
.ivm-apply-form label.checkbox input{margin-top:.25rem;}

.ivm-apply-form > fieldset > label + label,
.ivm-apply-form > fieldset > .grid-2 + label,
.ivm-apply-form > fieldset > label + .grid-2{margin-top:1rem;}

.step-nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.75rem;gap:1rem;flex-wrap:wrap;}
.step-nav span:empty{flex:1;}

.ivm-apply-review{
	background:#f7faff;border:1px dashed #cfd9ef;border-radius:14px;padding:1.25rem;margin-bottom:1rem;
}
.ivm-apply-review dl{margin:0;display:grid;gap:.6rem .9rem;grid-template-columns:max-content 1fr;}
.ivm-apply-review dt{font-weight:600;color:#475467;font-size:.85rem;}
.ivm-apply-review dd{margin:0;color:#101828;font-size:.95rem;word-break:break-word;}

#ivm-apply-result .ivm-success-card{
	margin-top:1.5rem;text-align:center;padding:2.5rem;border-radius:18px;
	background:linear-gradient(135deg,#E8F5EA,#E8F1FB);border:1px solid rgba(46,125,50,.2);
}
#ivm-apply-result .ivm-success-card .check{
	width:60px;height:60px;border-radius:50%;background:#2E7D32;color:#fff;font-size:2rem;
	display:grid;place-items:center;margin:0 auto 1rem;box-shadow:0 12px 24px -8px rgba(46,125,50,.5);
}
#ivm-apply-result .ivm-alert-error{
	margin-top:1rem;padding:1rem 1.2rem;border-radius:10px;background:#fef3f2;border:1px solid #fda29b;color:#b42318;
}

@media (max-width:640px){
	.ivm-apply-form{padding:1.5rem;border-radius:18px;}
	.ivm-apply-steps li{min-width:auto;font-size:.8rem;padding:.6rem .7rem;}
	.step-nav{flex-direction:column-reverse;}
	.step-nav .ivm-btn{width:100%;}
}

/* =========================================================
 * Simplified Submit Article form (v2.2)
 * ========================================================= */
.ivm-simple-submit .ivm-page-head { text-align:center; margin-bottom:32px; }
.ivm-simple-submit .ivm-page-head h1 { font-family: Merriweather, Georgia, serif; font-size:2rem; color:#0f172a; }
.ivm-simple-submit .ivm-page-head p { color:#475569; max-width:640px; margin:8px auto 0; font-size:15px; }

.ivm-simple-form .ivm-card-sec {
	background:#fff;
	border:1px solid #e2e8f0;
	border-radius:14px;
	padding:24px 26px;
	margin-bottom:18px;
	box-shadow: 0 1px 3px rgba(15,23,42,.04);
	transition: box-shadow .2s ease, transform .2s ease;
}
.ivm-simple-form .ivm-card-sec:hover { box-shadow: 0 6px 18px rgba(15,23,42,.06); }
.ivm-simple-form .ivm-card-sec h3 {
	margin:0 0 18px;
	font-size:1.1rem;
	color:#0f172a;
	font-weight:700;
	display:flex; align-items:center; gap:10px;
	border-bottom:1px solid #f1f5f9;
	padding-bottom:12px;
}
.ivm-simple-form .ivm-sec-num {
	display:inline-flex; align-items:center; justify-content:center;
	width:28px; height:28px; border-radius:50%;
	background: linear-gradient(135deg,#005A9C,#2E7D32);
	color:#fff; font-size:13px; font-weight:700;
	flex-shrink:0;
}
.ivm-simple-form .row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ivm-simple-form .ivm-field { margin-bottom:14px; }
.ivm-simple-form .ivm-field label { display:block; font-size:13px; font-weight:600; color:#334155; margin-bottom:6px; }
.ivm-simple-form .ivm-field .req { color:#dc2626; }
.ivm-simple-form .ivm-field input[type=text],
.ivm-simple-form .ivm-field input[type=email],
.ivm-simple-form .ivm-field input[type=tel],
.ivm-simple-form .ivm-field input[type=number],
.ivm-simple-form .ivm-field select,
.ivm-simple-form .ivm-field textarea {
	width:100%; padding:11px 14px;
	border:1px solid #cbd5e1; border-radius:8px;
	font-size:14px; font-family:inherit;
	background:#fff; transition:border-color .15s, box-shadow .15s;
}
.ivm-simple-form .ivm-field input:focus,
.ivm-simple-form .ivm-field select:focus,
.ivm-simple-form .ivm-field textarea:focus {
	outline:none; border-color:#005A9C; box-shadow:0 0 0 3px rgba(0,90,156,.12);
}
.ivm-simple-form .ivm-hint { display:block; margin-top:6px; color:#64748b; font-size:12px; }

.ivm-apc-sec { border-left:4px solid #2E7D32 !important; }
.ivm-apc-simple-table table { width:100%; border-collapse:collapse; font-size:14px; }
.ivm-apc-simple-table th, .ivm-apc-simple-table td { padding:12px 14px; text-align:left; border-bottom:1px solid #f1f5f9; }
.ivm-apc-simple-table th { background:#f8fafc; font-weight:700; color:#0f172a; text-transform:uppercase; font-size:12px; letter-spacing:.4px; }
.ivm-apc-simple-table tbody tr:hover { background:#f8fafc; }

.ivm-upi-sec { border-left:4px solid #F4B400 !important; background:linear-gradient(180deg,#fffefb,#fff) !important; }
.ivm-upi-wrap { display:grid; grid-template-columns: 240px 1fr; gap:24px; align-items:start; }
.ivm-upi-qr { background:#fff; border:1px solid #e2e8f0; border-radius:12px; padding:14px; text-align:center; box-shadow:0 4px 14px rgba(0,0,0,.05); }
.ivm-upi-qr img { width:100%; height:auto; display:block; max-width:220px; margin:0 auto; }
.ivm-upi-placeholder { padding:48px 12px; color:#94a3b8; font-size:14px; border:2px dashed #cbd5e1; border-radius:8px; }
.ivm-upi-meta .ivm-upi-row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px dashed #e2e8f0; font-size:14px; }
.ivm-upi-meta .ivm-upi-row span { color:#64748b; }
.ivm-upi-meta .ivm-upi-row strong { color:#0f172a; font-family:ui-monospace,Menlo,Consolas,monospace; }
.ivm-upi-steps { margin:14px 0 0; padding-left:20px; color:#334155; font-size:13.5px; line-height:1.65; }
.ivm-upi-steps li { margin-bottom:4px; }

.ivm-simple-form .ivm-dropzone {
	display:block; cursor:pointer; padding:22px 18px;
	border:2px dashed #cbd5e1; border-radius:10px;
	text-align:center; background:#f8fafc;
	transition: background .15s, border-color .15s;
}
.ivm-simple-form .ivm-dropzone:hover { background:#f1f5f9; border-color:#005A9C; }
.ivm-simple-form .ivm-dropzone input[type=file] { display:none; }
.ivm-simple-form .ivm-dropzone p { margin:0; color:#475569; font-size:13.5px; }
.ivm-simple-form .ivm-dropzone .file-name:not(:empty) { margin-top:8px; color:#005A9C; font-weight:600; font-size:13px; }

.ivm-simple-form .ivm-checkbox label { display:flex; gap:10px; align-items:flex-start; cursor:pointer; font-size:14px; color:#334155; line-height:1.55; font-weight:500; }
.ivm-simple-form .ivm-checkbox input[type=checkbox] { margin-top:3px; width:18px; height:18px; accent-color:#005A9C; flex-shrink:0; }

.ivm-simple-form .ivm-form-submit { text-align:center; margin-top:24px; }
.ivm-simple-form .ivm-btn-lg { font-size:16px; padding:14px 36px; min-width:240px; border-radius:10px; font-weight:700; }
.ivm-simple-form .ivm-btn-primary:disabled { opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }

.ivm-alert { padding:12px 16px; border-radius:8px; margin-bottom:16px; font-size:14px; }
.ivm-alert-err { background:#fef2f2; color:#991b1b; border:1px solid #fecaca; }

.ivm-confirm-card { background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:48px 36px; text-align:center; box-shadow:0 10px 30px rgba(15,23,42,.06); }
.ivm-confirm-icon { width:72px; height:72px; margin:0 auto 18px; border-radius:50%; background:linear-gradient(135deg,#16a34a,#2E7D32); color:#fff; font-size:36px; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 20px rgba(46,125,50,.3); }
.ivm-confirm-card h1 { font-family:Merriweather,Georgia,serif; color:#0f172a; margin:0 0 12px; }
.ivm-confirm-card > p { color:#475569; max-width:560px; margin:0 auto 22px; line-height:1.6; }
.ivm-confirm-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; max-width:520px; margin:24px auto 0; text-align:left; }
.ivm-confirm-grid > div { padding:12px 14px; background:#f8fafc; border-radius:8px; border-left:3px solid #005A9C; }
.ivm-confirm-grid span { display:block; font-size:11px; text-transform:uppercase; letter-spacing:.6px; color:#64748b; margin-bottom:4px; }
.ivm-confirm-grid strong { color:#0f172a; font-size:14px; word-break:break-word; }

@media (max-width: 720px) {
	.ivm-simple-form .row { grid-template-columns:1fr; }
	.ivm-upi-wrap { grid-template-columns:1fr; }
	.ivm-upi-qr { max-width:260px; margin:0 auto; }
	.ivm-confirm-grid { grid-template-columns:1fr; }
	.ivm-simple-form .ivm-card-sec { padding:18px; }
}

/* ===== APC public table (Article Charges page) ===== */
.ivm-apc-public-table table { width:100%; border-collapse:collapse; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.06); border-radius:10px; overflow:hidden; }
.ivm-apc-public-table th, .ivm-apc-public-table td { padding:14px 16px; border-bottom:1px solid #eef0f3; text-align:left; font-size:14.5px; }
.ivm-apc-public-table thead th { background:#1B5E20; color:#fff; font-weight:600; letter-spacing:.3px; }
.ivm-apc-public-table tbody tr:nth-child(even){ background:#fafbf7; }
.ivm-apc-public-table tbody tr:hover{ background:#f1f6ec; }
.ivm-apc-notes ol { padding-left:20px; line-height:1.7; }
.ivm-apc-notes h3 { font-family:Merriweather,serif; color:#1B5E20; margin-bottom:10px; }

/* APC selected-fee chip in submission form */
#ivm-selected-fee { color:#C9A227; font-weight:700; }

/* QR uploader buttons spacing */
.ivm-upi-qr-uploader .button { margin-left:6px; }

/* =========================================================
 * IVM Magazine Pages — APC + Author Instructions (v2.4.0)
 * ========================================================= */

.ivm-mag-page { color: var(--ivm-text); }

/* Hero */
.ivm-mag-hero {
  position: relative;
  padding: 72px 0 60px;
  overflow: hidden;
  color: #fff;
  text-align: center;
}
.ivm-hero-apc { background: linear-gradient(135deg, #0f3f15 0%, #1B5E20 45%, #2f7f37 100%); }
.ivm-hero-ai  { background: linear-gradient(135deg, #0b2545 0%, #13315c 45%, #1e5aa8 100%); }
.ivm-mag-hero h1 { color:#fff; font-size: clamp(1.8rem, 3.4vw, 2.6rem); margin:.4em 0 .2em; letter-spacing:.2px; }
.ivm-hero-sub { font-size: clamp(1rem, 1.6vw, 1.15rem); opacity:.92; margin:0 auto 18px; max-width: 780px; }
.ivm-hero-intro { max-width: 880px; margin: 14px auto 0; opacity:.9; line-height: 1.65; font-size: .98rem; }
.ivm-hero-badge {
  display: inline-block;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.28);
  padding: 6px 14px;
  border-radius: 999px;
  font-size: .82rem;
  letter-spacing: .04em;
  backdrop-filter: blur(6px);
}
.ivm-hero-bubble { position:absolute; border-radius:50%; filter: blur(50px); opacity:.35; pointer-events:none; }
.ivm-hero-bubble.ivm-b1 { width: 320px; height: 320px; background:#ffd166; top:-100px; left:-80px; }
.ivm-hero-bubble.ivm-b2 { width: 280px; height: 280px; background:#43aa8b; bottom:-120px; right:-60px; }

.ivm-mag-section { padding: 56px 0; }
.ivm-mag-alt { background: linear-gradient(180deg, #f7fbf6 0%, #eef4fb 100%); }
.ivm-section-head { text-align:center; margin-bottom: 34px; }
.ivm-section-head h2 { font-size: clamp(1.4rem, 2.4vw, 1.9rem); margin:0 0 6px; }
.ivm-section-head p { color: var(--ivm-muted); margin:0; }

/* APC Grid (mobile-first cards) */
.ivm-apc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 18px;
}
.ivm-apc-card {
  background:#fff;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 6px 22px rgba(15,23,42,.06);
  border-top: 5px solid var(--tc);
  transition: transform .18s ease, box-shadow .18s ease;
  position: relative;
}
.ivm-apc-card:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(15,23,42,.11); }
.ivm-apc-card header { display:flex; align-items:center; gap:12px; margin-bottom: 12px; }
.ivm-apc-icon {
  font-size: 1.8rem; width:46px; height:46px; display:grid; place-items:center;
  background: color-mix(in oklab, var(--tc) 15%, #fff);
  border-radius: 12px;
}
.ivm-apc-card h3 { font-size: 1.05rem; margin:0; color:#0f172a; }
.ivm-apc-price {
  font-family: var(--ivm-font-display);
  font-size: 2rem; font-weight: 900; color: var(--tc);
  line-height: 1; padding: 6px 0 10px;
  border-bottom: 1px dashed color-mix(in oklab, var(--tc) 30%, #e2e8f0);
}
.ivm-apc-currency { font-size: 1.1rem; vertical-align: super; margin-right: 2px; }
.ivm-apc-meta { list-style:none; padding:12px 0 0; margin:0; }
.ivm-apc-meta li { font-size:.9rem; color:#334155; padding: 4px 0; }

/* Desktop table (auto-hidden on mobile) */
.ivm-apc-table-wrap { margin-top: 32px; overflow-x:auto; }
.ivm-apc-tbl { width:100%; border-collapse: separate; border-spacing:0; background:#fff; border-radius: 14px; overflow:hidden; box-shadow: 0 6px 22px rgba(15,23,42,.05); }
.ivm-apc-tbl th, .ivm-apc-tbl td { padding: 14px 16px; text-align:left; }
.ivm-apc-tbl thead th { background:#0f172a; color:#fff; font-size:.85rem; letter-spacing:.04em; text-transform:uppercase; }
.ivm-apc-tbl tbody tr { border-top: 1px solid #eef2f7; transition: background .15s; }
.ivm-apc-tbl tbody tr:nth-child(odd) { background: #fafbfd; }
.ivm-apc-tbl tbody tr:hover { background: color-mix(in oklab, var(--tc) 8%, #fff); }
.ivm-tbl-dot { display:inline-block; width:10px; height:10px; border-radius:50%; margin-right:6px; vertical-align:middle; }
.ivm-tbl-badge { display:inline-block; color:#fff; padding: 4px 10px; border-radius: 999px; font-weight:700; font-size:.9rem; }
@media (max-width: 720px) { .ivm-apc-table-wrap { display:none; } }
@media (min-width: 900px) { .ivm-apc-grid { display:none; } }

/* Policy panel */
.ivm-policy-panel {
  display: flex; gap: 18px;
  background: linear-gradient(135deg, #fff8e1 0%, #fef3c7 100%);
  border-left: 6px solid #f59e0b;
  padding: 22px 26px; border-radius: 14px;
  box-shadow: 0 6px 18px rgba(245,158,11,.12);
}
.ivm-policy-icon { font-size: 1.8rem; }
.ivm-policy-panel h2 { margin: 0 0 10px; color:#78350f; font-size: 1.25rem; }
.ivm-policy-list { margin: 0; padding-left: 20px; color:#4a2f0a; }
.ivm-policy-list li { padding: 4px 0; line-height:1.55; }

/* Payment */
.ivm-payment-wrap { display: grid; grid-template-columns: 320px 1fr; gap: 24px; align-items:start; }
@media (max-width: 820px) { .ivm-payment-wrap { grid-template-columns: 1fr; } }
.ivm-qr-card {
  background: linear-gradient(160deg, #ecfeff 0%, #cffafe 100%);
  border-radius: 16px; padding: 22px; text-align:center;
  box-shadow: 0 6px 20px rgba(6,182,212,.15); border: 1px solid #a5f3fc;
}
.ivm-qr-card h3 { margin:0 0 12px; color:#0e7490; }
.ivm-qr-img { max-width: 220px; width:100%; background:#fff; padding:8px; border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.ivm-qr-placeholder { background:#fff; padding:40px 20px; border:2px dashed #06b6d4; border-radius:10px; color:#0e7490; font-weight:600; }
.ivm-qr-meta { display:flex; justify-content:space-between; padding: 8px 0; border-bottom: 1px dashed #67e8f9; font-size:.92rem; }
.ivm-qr-meta:last-of-type { border-bottom:0; }
.ivm-qr-instructions { text-align:left; margin-top:14px; font-size:.9rem; color:#134e4a; }
.ivm-qr-instructions p { margin:6px 0; }

.ivm-pay-form-card {
  background:#fff; border-radius:16px; padding: 26px; box-shadow: 0 8px 26px rgba(15,23,42,.06); border: 1px solid #e2e8f0;
}
.ivm-pay-form-card h2 { margin:0 0 6px; color:#0f172a; font-size:1.35rem; }
.ivm-pay-form-card > p { color: var(--ivm-muted); margin: 0 0 14px; }

/* Waiver */
.ivm-waiver-panel {
  background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
  border-radius: 16px; padding: 28px; text-align:center;
  border: 1px solid #a7f3d0; box-shadow: 0 6px 20px rgba(16,185,129,.15);
}
.ivm-waiver-icon { font-size: 2rem; }
.ivm-waiver-panel h2 { margin: 8px 0 8px; color:#065f46; }
.ivm-waiver-panel p { max-width: 720px; margin: 0 auto 18px; color:#064e3b; }
.ivm-waiver-form { text-align:left; margin-top: 22px; background:#fff; padding: 22px; border-radius: 12px; box-shadow: 0 4px 14px rgba(0,0,0,.05); }

/* Article Type Explorer */
.ivm-at-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.ivm-at-card {
  background:#fff; border-radius: 16px; padding: 22px;
  border: 1px solid #eef2f7;
  box-shadow: 0 4px 16px rgba(15,23,42,.05);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s;
  position:relative; overflow:hidden;
}
.ivm-at-card:before {
  content:""; position:absolute; inset:0 0 auto 0; height:6px;
  background: linear-gradient(90deg, var(--tc), color-mix(in oklab, var(--tc) 40%, #fff));
}
.ivm-at-card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(15,23,42,.1); border-color: color-mix(in oklab, var(--tc) 30%, #eef2f7); }
.ivm-at-card header { display:flex; align-items:center; gap:12px; margin: 8px 0 10px; }
.ivm-at-icon {
  font-size:1.8rem; width:48px; height:48px; display:grid; place-items:center;
  background: color-mix(in oklab, var(--tc) 15%, #fff);
  border-radius: 12px; color: var(--tc);
}
.ivm-at-card h3 { margin:0; font-size: 1.1rem; color:#0f172a; }
.ivm-at-intro { color:#475569; font-size: .92rem; margin: 0 0 12px; line-height:1.55; }
.ivm-at-meta { list-style:none; padding:0; margin:0 0 16px; }
.ivm-at-meta li { display:flex; justify-content:space-between; padding: 6px 0; border-bottom:1px dashed #e2e8f0; font-size:.85rem; color:#334155; }
.ivm-at-meta li span { color: var(--ivm-muted); font-size:.78rem; text-transform: uppercase; letter-spacing:.03em; }
.ivm-at-toggle { width:100%; }
.ivm-at-detail {
  margin-top: 16px; padding: 18px; border-radius: 12px;
  background: color-mix(in oklab, var(--tc) 6%, #fff);
  border-left: 4px solid var(--tc);
}
.ivm-at-detail h4 { margin: 12px 0 4px; font-size: .95rem; color: var(--tc); text-transform: uppercase; letter-spacing:.05em; }
.ivm-at-detail h4:first-child { margin-top: 0; }
.ivm-at-detail p, .ivm-at-detail ol { font-size:.92rem; color:#0f172a; margin: 4px 0 8px; line-height:1.6; }
.ivm-at-facts { display:flex; flex-wrap:wrap; gap:8px; margin-top: 14px; }
.ivm-at-facts span { background: var(--tc); color:#fff; padding: 4px 10px; border-radius: 999px; font-size:.8rem; }

/* Preparation grid */
.ivm-prep-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.ivm-prep-card {
  background:#fff; padding: 18px; border-radius: 14px;
  display:flex; gap:12px; align-items:flex-start;
  box-shadow: 0 4px 14px rgba(15,23,42,.05);
  border: 1px solid #eef2f7;
  transition: transform .15s ease;
}
.ivm-prep-card:hover { transform: translateY(-2px); }
.ivm-prep-icon { font-size:1.5rem; flex:0 0 auto; }
.ivm-prep-card p { margin: 0; font-size:.92rem; color:#334155; line-height:1.5; }

/* Workflow */
.ivm-flow { list-style:none; padding:0; margin:0; display:grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; counter-reset: flow; }
.ivm-flow-step {
  background:#fff; border-radius: 14px; padding: 20px 20px 20px 68px;
  position: relative; box-shadow: 0 4px 16px rgba(15,23,42,.06);
  border-left: 4px solid #1B5E20;
  transition: transform .18s ease, box-shadow .18s ease;
}
.ivm-flow-step:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(15,23,42,.11); }
.ivm-flow-num {
  position:absolute; left: 16px; top: 18px;
  width: 40px; height: 40px; border-radius: 50%;
  background: linear-gradient(135deg, #1B5E20, #43aa8b);
  color:#fff; display:grid; place-items:center;
  font-weight:800; font-family: var(--ivm-font-display);
  box-shadow: 0 4px 10px rgba(27,94,32,.35);
}
.ivm-flow-title { font-weight:700; color:#0f172a; font-size:1rem; margin-bottom:4px; }
.ivm-flow-emoji { margin-right: 4px; }
.ivm-flow-desc { color: var(--ivm-muted); font-size:.88rem; line-height:1.5; }

/* CTA */
.ivm-mag-cta {
  padding: 56px 0;
  background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 60%, #0d9488 100%);
  color:#fff; text-align:center;
}
.ivm-mag-cta h2 { color:#fff; font-size: clamp(1.4rem, 2.4vw, 1.9rem); margin: 0 0 20px; }
.ivm-cta-buttons { display:flex; gap:12px; flex-wrap:wrap; justify-content:center; }
.ivm-btn-outline { background: transparent; color:#fff; border:2px solid rgba(255,255,255,.6); }
.ivm-btn-outline:hover { background: rgba(255,255,255,.1); color:#fff; }

/* Alerts */
.ivm-alert { padding: 10px 14px; border-radius: 8px; margin: 10px 0; background:#f1f5f9; color:#0f172a; font-size:.92rem; }
.ivm-alert-ok  { background:#d1fae5; color:#065f46; border:1px solid #a7f3d0; }
.ivm-alert-err { background:#fee2e2; color:#991b1b; border:1px solid #fecaca; }

@media (max-width: 620px) {
  .ivm-mag-hero { padding: 54px 0 44px; }
  .ivm-mag-section { padding: 40px 0; }
  .ivm-policy-panel { flex-direction:column; padding: 18px; }
}


/* =========================================================
   v2.5 — Editorial Experience Layer
   Richer visual hierarchy for every post and page.
   ========================================================= */
:root{
  --ivm-ink:#10251b;
  --ivm-green:#165b32;
  --ivm-green-2:#28764a;
  --ivm-cream:#f7f4eb;
  --ivm-line:#dfe7df;
  --ivm-glow:rgba(27,94,32,.16);
}
body{background:linear-gradient(180deg,#fff 0%,#fbfcfa 100%);}
body:not(.home):not(.front-page) #ivm-main{position:relative;overflow:hidden;}
body:not(.home):not(.front-page) #ivm-main:before{content:"";position:absolute;inset:0 0 auto 0;height:360px;pointer-events:none;background:radial-gradient(circle at 12% 8%,rgba(201,162,39,.12),transparent 28%),radial-gradient(circle at 88% 2%,rgba(40,118,74,.10),transparent 30%);}
.ivm-breadcrumb{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:#718177;margin-bottom:1.15rem;}
.ivm-breadcrumb a{color:var(--ivm-green);font-weight:700;}
.ivm-breadcrumb span{margin:0 .15rem;}

/* Universal modern page hero */
.ivm-page-hero{position:relative;padding:clamp(3.2rem,7vw,6rem) 0 3rem;text-align:center;background:linear-gradient(135deg,rgba(245,248,242,.98),rgba(255,255,255,.94) 52%,rgba(247,244,235,.9));border-bottom:1px solid var(--ivm-line);}
.ivm-page-hero:after{content:"";position:absolute;left:50%;bottom:-1px;width:90px;height:3px;transform:translateX(-50%);background:linear-gradient(90deg,var(--ivm-green),var(--ivm-gold));border-radius:9px;}
.ivm-page-eyebrow{display:inline-flex;padding:.42rem .85rem;border:1px solid rgba(27,94,32,.18);background:rgba(255,255,255,.72);border-radius:999px;color:var(--ivm-green);font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;box-shadow:0 5px 18px rgba(20,50,35,.05);}
.ivm-page-hero h1{font-size:clamp(2.25rem,5vw,4rem);max-width:18ch;margin:.8rem auto .5rem;text-wrap:balance;}
.ivm-page-hero p{max-width:62ch;margin:0 auto;color:var(--ivm-muted);font-size:1.05rem;}
.ivm-page-content-wrap{padding:clamp(2.5rem,5vw,4.5rem) 1.25rem;position:relative;}
.ivm-modern-prose{max-width:820px;background:rgba(255,255,255,.86);border:1px solid rgba(223,231,223,.9);border-radius:22px;padding:clamp(1.5rem,4vw,3.4rem);box-shadow:0 18px 55px rgba(20,50,35,.07);}
.ivm-modern-prose h2{font-size:clamp(1.5rem,3vw,2rem);margin-top:2.1em;position:relative;padding-left:1rem;}
.ivm-modern-prose h2:before{content:"";position:absolute;left:0;top:.15em;bottom:.15em;width:4px;border-radius:4px;background:linear-gradient(var(--ivm-green),var(--ivm-gold));}
.ivm-modern-prose h3{color:var(--ivm-green);margin-top:1.7em;}
.ivm-modern-prose p,.ivm-modern-prose li{color:#304339;}
.ivm-modern-prose blockquote{margin:2rem 0;padding:1.25rem 1.5rem;border:0;border-left:4px solid var(--ivm-gold);border-radius:0 14px 14px 0;background:linear-gradient(90deg,#fbf8ee,#fff);font-family:var(--ivm-font-display);font-size:1.12em;box-shadow:0 8px 25px rgba(20,50,35,.05);}
.ivm-modern-prose table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--ivm-line);border-radius:14px;box-shadow:0 8px 24px rgba(20,50,35,.05);margin:2rem 0;}
.ivm-modern-prose th{background:var(--ivm-green);color:#fff;padding:.8rem;text-align:left;}
.ivm-modern-prose td{padding:.75rem;border-top:1px solid var(--ivm-line);}
.ivm-modern-prose tr:nth-child(even) td{background:#f8faf7;}

/* Article reading experience */
.ivm-reading-progress{position:fixed;z-index:100;top:0;left:0;width:100%;height:3px;background:transparent;pointer-events:none;}
.ivm-reading-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--ivm-green),var(--ivm-gold));box-shadow:0 0 10px var(--ivm-glow);}
.ivm-article-page{position:relative;}
.ivm-article-hero{padding:clamp(3.5rem,8vw,6.8rem) 0 3.5rem;background:radial-gradient(circle at 15% 20%,rgba(201,162,39,.14),transparent 25%),radial-gradient(circle at 88% 0%,rgba(40,118,74,.15),transparent 32%),linear-gradient(135deg,#f8faf6,#fff 58%,#f6f3e9);border-bottom:1px solid var(--ivm-line);}
.ivm-article-hero-inner{max-width:980px;text-align:center;}
.ivm-article-kicker{display:flex;justify-content:center;align-items:center;gap:.55rem;flex-wrap:wrap;color:#64746b;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;font-weight:600;}
.ivm-topic{background:var(--ivm-green);color:#fff;padding:.35rem .75rem;border-radius:999px;font-weight:800;box-shadow:0 5px 16px rgba(27,94,32,.18);}
.ivm-article-hero h1{font-size:clamp(2.3rem,5.6vw,4.5rem);line-height:1.06;max-width:18ch;margin:.9rem auto 1.15rem;text-wrap:balance;}
.ivm-article-deck{max-width:760px;margin:0 auto 1.35rem;color:#586960;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65;}
.ivm-article-byline{display:inline-flex;align-items:center;gap:.55rem;color:#52645a;font-size:.85rem;font-weight:700;}
.ivm-byline-dot{width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,var(--ivm-green),var(--ivm-gold));box-shadow:0 0 0 5px rgba(27,94,32,.08);}
.ivm-article-layout{display:grid;grid-template-columns:70px minmax(0,820px);gap:1.5rem;justify-content:center;padding-top:clamp(2rem,5vw,4rem);}
.ivm-share-rail{padding-top:1rem;}
.ivm-share-rail button{position:sticky;top:90px;width:56px;height:56px;border:1px solid var(--ivm-line);border-radius:50%;background:#fff;color:var(--ivm-green);box-shadow:0 8px 24px rgba(20,50,35,.08);font-size:1.1rem;cursor:pointer;transition:.2s ease;}
.ivm-share-rail button:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(20,50,35,.13);}
.ivm-share-rail button span{display:block;font-size:.55rem;letter-spacing:.06em;text-transform:uppercase;margin-top:1px;}
.ivm-article-content{min-width:0;}
.ivm-article-cover{margin:0 0 2.6rem;border-radius:22px;overflow:hidden;background:#eef2ed;box-shadow:0 25px 65px rgba(20,50,35,.15);position:relative;}
.ivm-article-cover:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);pointer-events:none;}
.ivm-article-cover img{width:100%;max-height:620px;object-fit:cover;margin:0!important;}
.ivm-prose-article{max-width:780px;margin:0 auto;font-size:1.08rem;}
.ivm-prose-article > p:first-child:first-letter{float:left;font-family:var(--ivm-font-display);font-size:4.1em;line-height:.82;padding:.12em .12em 0 0;color:var(--ivm-green);font-weight:900;}
.ivm-prose-article h2{font-size:clamp(1.55rem,3vw,2.1rem);margin-top:2.2em;padding-bottom:.45rem;border-bottom:1px solid var(--ivm-line);}
.ivm-prose-article h3{margin-top:1.8em;color:var(--ivm-green);}
.ivm-prose-article img{border-radius:16px;box-shadow:0 12px 34px rgba(20,50,35,.10);}
.ivm-prose-article figure{margin:2rem 0;}
.ivm-prose-article figcaption{text-align:center;color:#718177;font-size:.82rem;margin-top:.55rem;}
.ivm-prose-article blockquote{margin:2.3rem 0;padding:1.4rem 1.6rem;border-left:4px solid var(--ivm-gold);background:#fbf8ef;border-radius:0 14px 14px 0;font-family:var(--ivm-font-display);font-size:1.12em;}
.ivm-prose-article ul,.ivm-prose-article ol{padding-left:1.35rem;}
.ivm-prose-article li{margin:.45rem 0;}
.ivm-article-end{margin-top:3rem;text-align:center;color:#718177;font-size:.82rem;}
.ivm-end-rule{width:90px;height:2px;margin:0 auto 1rem;background:linear-gradient(90deg,var(--ivm-green),var(--ivm-gold));border-radius:4px;}

/* Archive / blog cards */
.ivm-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem;margin-top:2rem;}
.ivm-post-card{overflow:hidden;border:1px solid var(--ivm-line);border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(20,50,35,.055);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.ivm-post-card:hover{transform:translateY(-6px);border-color:rgba(27,94,32,.35);box-shadow:0 20px 42px rgba(20,50,35,.12);}
.ivm-post-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#edf3ec,#f7f2e6);}
.ivm-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.ivm-post-card:hover .ivm-post-thumb img{transform:scale(1.045);}
.ivm-thumb-fallback{height:100%;display:grid;place-items:center;font-family:var(--ivm-font-display);font-weight:900;font-size:2rem;color:var(--ivm-green);background:radial-gradient(circle,#fff,#eef4ed);}
.ivm-post-card-body{padding:1.25rem 1.3rem 1.35rem;}
.ivm-post-card .meta{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#78877e;font-weight:700;margin-bottom:.5rem;}
.ivm-post-card h2{font-size:1.2rem;line-height:1.3;margin:0 0 .6rem;}
.ivm-post-card h2 a{color:var(--ivm-ink);}
.ivm-post-card h2 a:hover{color:var(--ivm-green);text-decoration:none;}
.ivm-post-card .excerpt{color:#63736a;font-size:.9rem;line-height:1.6;margin-bottom:1rem;}
.ivm-card-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--ivm-green);font-size:.82rem;font-weight:800;}
.ivm-card-link span{transition:transform .2s ease;}
.ivm-post-card:hover .ivm-card-link span{transform:translateX(4px);}

/* Make older archive rows visually stronger when used by issue pages */
.ivm-archive-list li{padding:1.35rem 1rem;border-radius:12px;transition:background .2s ease,transform .2s ease;}
.ivm-archive-list li:hover{background:#f7faf6;transform:translateX(4px);}

@media (max-width:900px){
  .ivm-post-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ivm-article-layout{grid-template-columns:1fr;}
  .ivm-share-rail{display:none;}
}
@media (max-width:620px){
  .ivm-post-grid{grid-template-columns:1fr;}
  .ivm-modern-prose{border-radius:16px;padding:1.3rem;}
  .ivm-article-hero{padding-top:3rem;}
  .ivm-article-hero h1{font-size:2.15rem;}
  .ivm-article-cover{border-radius:15px;}
}
@media (prefers-reduced-motion:reduce){.ivm-post-card,.ivm-post-thumb img,.ivm-card-link span,.ivm-share-rail button{transition:none!important;}}
@media print{.ivm-site-header,.ivm-site-footer,.ivm-share-rail,.ivm-reading-progress{display:none!important}.ivm-article-hero{background:#fff;border:0}.ivm-article-layout{display:block}.ivm-prose-article{max-width:none}.ivm-article-cover{box-shadow:none;}}

.ivm-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}.ivm-reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.ivm-reveal{opacity:1;transform:none;transition:none}}
