@charset "utf-8";
/* ==========================================================================
   Fusion — fusioninnovate.com
   Design system, 2026 rebuild.
   Palette: Fusion green (identity) + academic navy (structure, echoing the
   curriculum grid) + the three Triad discipline hues used as a semantic key.
   ========================================================================== */

:root{
  /* ground + ink */
  --paper:#F6F8F4;
  --paper-2:#ECF0E8;
  --card:#FFFFFF;
  --ink:#14231C;
  --ink-2:#3D4C44;
  --ink-3:#6C7B73;
  --rule:#D7DFD4;
  --rule-2:#C3CDBF;

  /* brand */
  --green:#00713A;
  --green-lift:#009146;
  --green-wash:#EAF3ED;
  --navy:#14315B;
  --navy-2:#1F4478;
  --navy-wash:#EDF1F7;

  /* triad discipline key */
  --sci:#00713A;
  --law:#6D3F9C;
  --mgmt:#A96C08;
  --olive:#5F7226;

  --shadow:0 1px 2px rgba(20,35,28,.05), 0 10px 28px -14px rgba(20,35,28,.20);
  --shadow-sm:0 1px 2px rgba(20,35,28,.06);

  --measure:66ch;
  --gut:28px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:17px;
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{
  font-family:Spectral,Georgia,"Times New Roman",serif;
  font-weight:600;
  line-height:1.16;
  text-wrap:balance;
  margin:0;
  letter-spacing:-.012em;
}
p{margin:0}
img{max-width:100%;height:auto}
a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--green-lift)}
a:focus-visible,button:focus-visible{outline:2px solid var(--green-lift);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:200;background:var(--card);padding:10px 16px;border-radius:4px;box-shadow:var(--shadow)}

.wrap{max-width:1120px;margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:820px}
.mono{font-family:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace}
.eyebrow{
  font-family:"IBM Plex Mono",ui-monospace,monospace;
  font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-3);margin:0;
}
.lede{font-size:19.5px;color:var(--ink-2);max-width:var(--measure)}
.prose p+p{margin-top:16px}
.prose{max-width:var(--measure);color:var(--ink-2)}
.prose strong{color:var(--ink)}

/* ---------- masthead ---------- */
.masthead{
  border-bottom:1px solid var(--rule);
  background:rgba(246,248,244,.92);
  backdrop-filter:blur(10px);
  position:sticky;top:0;z-index:60;
}
.masthead .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:74px}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink)}
.brand img{width:150px;height:36px;display:block}
.brand .sub{
  font-family:"IBM Plex Mono",monospace;font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);line-height:1.4;
  border-left:1px solid var(--rule-2);padding-left:13px;max-width:130px;
}
nav.top{display:flex;gap:24px;align-items:center}
nav.top a{font-size:14.5px;color:var(--ink-2);text-decoration:none;font-weight:500}
nav.top a:hover,nav.top a[aria-current="page"]{color:var(--green)}
nav.top a[aria-current="page"]{font-weight:600}
.menu-btn{
  display:none;background:none;border:1px solid var(--rule-2);border-radius:4px;
  color:var(--ink);padding:8px 12px;font:500 13.5px "IBM Plex Sans",sans-serif;cursor:pointer;
}

/* ---------- page header band ---------- */
.pagehead{padding:60px 0 52px;border-bottom:1px solid var(--rule);background:var(--paper-2)}
.pagehead h1{font-size:clamp(32px,4.6vw,48px)}
.pagehead .lede{margin-top:18px}
.crumb{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px}
.crumb a{color:var(--ink-3);text-decoration:none}
.crumb a:hover{color:var(--green)}

/* ---------- sections ---------- */
section{padding:70px 0;border-bottom:1px solid var(--rule)}
section:last-of-type{border-bottom:none}
.sec-head{display:grid;grid-template-columns:180px 1fr;gap:40px;margin-bottom:42px}
.sec-head h2{font-size:clamp(26px,3.3vw,35px)}
.sec-head .note{color:var(--ink-2);margin-top:12px;max-width:var(--measure)}
.rail{padding-top:7px}

/* ---------- buttons ---------- */
.btn{display:inline-block;padding:12px 22px;border-radius:3px;font-size:15px;font-weight:500;text-decoration:none;transition:transform .12s ease,border-color .12s ease}
.btn-solid{background:var(--green);color:#fff}
.btn-solid:hover{background:var(--green-lift);color:#fff;transform:translateY(-1px)}
.btn-ghost{border:1px solid var(--rule-2);color:var(--ink)}
.btn-ghost:hover{border-color:var(--green);color:var(--green)}
.btn-row{display:flex;gap:13px;flex-wrap:wrap;margin-top:32px}

/* ---------- triad mark ---------- */
.triad{width:100%;max-width:340px;margin:0 auto;display:block;height:auto}
@media (prefers-reduced-motion:no-preference){
  .spin .lobe{animation:settle .85s cubic-bezier(.2,.7,.3,1) backwards}
  .spin:nth-of-type(1) .lobe{animation-delay:.06s}
  .spin:nth-of-type(2) .lobe{animation-delay:.18s}
  .spin:nth-of-type(3) .lobe{animation-delay:.30s}
  .ringtext{animation:fadein 1.1s ease .5s backwards}
}
@keyframes settle{from{opacity:0;transform:rotate(-38deg) scale(.7)}to{opacity:1;transform:none}}
@keyframes fadein{from{opacity:0}to{opacity:1}}

/* ---------- hero ---------- */
.hero{padding:76px 0 66px;border-bottom:1px solid var(--rule)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}
.hero h1{font-size:clamp(36px,5vw,58px);letter-spacing:-.02em;margin-top:18px}
.hero h1 em{font-style:italic;color:var(--green)}
.hero .lede{margin-top:22px}

/* ---------- "now teaching" strip ---------- */
.term-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.term{background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--navy);border-radius:5px;padding:26px 24px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.term.is-now{border-top-color:var(--green)}
.term .when{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:center;gap:8px}
.term.is-now .when{color:var(--green)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--green-lift);box-shadow:0 0 0 3px rgba(0,145,70,.2)}
.term h3{font-size:20px;margin-top:14px}
.term ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}
.term li{font-size:15px;line-height:1.45}
.term li a{text-decoration:none;font-weight:500}
.term li a:hover{text-decoration:underline}
.term .cd{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--ink-3);display:block}

/* ---------- course list ---------- */
.courses{display:flex;flex-direction:column;border-top:1px solid var(--rule)}
.course{
  display:grid;grid-template-columns:132px 1fr 150px;gap:26px;
  padding:22px 8px;border-bottom:1px solid var(--rule);align-items:baseline;
  text-decoration:none;color:inherit;transition:background .14s ease;
}
.course:hover{background:var(--paper-2)}
.course:hover .name{color:var(--green)}
.course .code{font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--navy);font-variant-numeric:tabular-nums;font-weight:500}
.course .name{font-family:Spectral,serif;font-size:20.5px;font-weight:600;transition:color .14s ease}
.course .name span{display:block;font-family:"IBM Plex Sans",sans-serif;font-size:14.5px;font-weight:400;color:var(--ink-2);margin-top:6px;max-width:64ch;line-height:1.5}
.course .meta{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums}
.tag{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:3px;border:1px solid currentColor;white-space:nowrap}
.t-sci{color:var(--sci)}.t-law{color:var(--law)}.t-mgmt{color:var(--mgmt)}.t-navy{color:var(--navy-2)}

/* ---------- curriculum module grid (rebuild of the fall/spring graphic) ---------- */
.term-block{margin-bottom:52px}
.term-label{
  font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.22em;
  text-transform:uppercase;color:var(--navy);font-weight:500;margin-bottom:14px;
}
.term-label.spring{color:var(--green)}
.modules{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.module{background:var(--card);border:1px solid var(--rule);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}
.module h3{
  background:var(--navy);color:#fff;font-family:"IBM Plex Sans",sans-serif;
  font-size:14px;font-weight:600;line-height:1.3;padding:12px 14px;margin:0;letter-spacing:0;
}
.modules.spring .module h3{background:var(--green)}
.module ul{list-style:none;margin:0;padding:14px;display:flex;flex-direction:column;gap:11px}
.module li{font-size:13.5px;line-height:1.4;color:var(--ink-2)}

/* ---------- course detail page ---------- */
.course-facts{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0;
  border:1px solid var(--rule);border-radius:5px;overflow:hidden;background:var(--card);margin-top:34px;
}
.course-facts > div{padding:20px 22px;border-right:1px solid var(--rule)}
.course-facts > div:last-child{border-right:none}
.course-facts dt{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}
.course-facts dd{margin:6px 0 0;font-size:15px;color:var(--ink);line-height:1.45}
.crosslist{font-family:"IBM Plex Mono",monospace;font-size:12.5px;color:var(--ink-2);line-height:1.9;word-spacing:.1em}

.tracks{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--rule);margin-top:8px}
.track{display:grid;grid-template-columns:52px 1fr;gap:24px;padding:26px 6px;border-bottom:1px solid var(--rule)}
.track .num{font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--navy);font-weight:500;padding-top:4px}
.track h3{font-size:21px;margin-bottom:10px}
.track p{color:var(--ink-2);max-width:var(--measure)}
.track p+p{margin-top:13px}

.callout{background:var(--green-wash);border-left:3px solid var(--green);border-radius:0 4px 4px 0;padding:20px 24px;margin-top:18px;max-width:var(--measure)}
.callout .k{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--green);display:block;margin-bottom:7px}
.callout p{color:var(--ink-2)}
.callout.navy{background:var(--navy-wash);border-left-color:var(--navy)}
.callout.navy .k{color:var(--navy)}

.qlist{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;max-width:var(--measure)}
.qlist li{padding-left:22px;position:relative;color:var(--ink-2);font-size:16px}
.qlist li::before{content:"—";position:absolute;left:0;color:var(--rule-2)}

.grade{width:100%;border-collapse:collapse;margin-top:18px;font-size:15px}
.grade th,.grade td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--rule)}
.grade th{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-weight:500}
.grade td.pct{font-family:"IBM Plex Mono",monospace;font-variant-numeric:tabular-nums;color:var(--navy);width:80px;font-weight:500}
.grade td.who{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--ink-3);width:100px}
.table-scroll{overflow-x:auto}

/* ---------- technology focus / track record ---------- */
.now-card{
  background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:36px;
  box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 210px;gap:36px;align-items:start;
}
.focus-stack{display:flex;flex-direction:column;gap:22px}
.now-card h3{font-size:30px;margin-top:6px}
.now-card p{margin-top:15px;color:var(--ink-2)}
.live{display:inline-flex;align-items:center;gap:7px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--green)}
.facts{border-left:2px solid var(--rule-2);padding-left:18px;display:flex;flex-direction:column;gap:15px;margin:0}
.facts dt{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3)}
.facts dd{margin:3px 0 0;font-size:14.5px;color:var(--ink);line-height:1.45}

.record{display:flex;flex-direction:column;border-top:1px solid var(--rule)}
.silo{display:grid;grid-template-columns:112px 1fr 170px;gap:24px;padding:20px 8px;border-bottom:1px solid var(--rule);align-items:baseline;text-decoration:none;color:inherit;transition:background .14s ease}
.silo:hover{background:var(--paper-2)}
.silo:hover .ttl{color:var(--green)}
.silo .yr{font-family:"IBM Plex Mono",monospace;font-size:13.5px;color:var(--olive);font-variant-numeric:tabular-nums;font-weight:500}
.silo .ttl{font-family:Spectral,serif;font-size:19px;font-weight:600;transition:color .14s ease}
.silo .who{font-size:13.5px;color:var(--ink-3);text-align:right}

/* ---------- skills ---------- */
.skills{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:6px;overflow:hidden}
.skill{background:var(--card);padding:26px 24px;text-decoration:none;color:inherit;transition:background .14s ease;display:block}
.skill:hover{background:var(--paper-2)}
.skill:hover h3{color:var(--green)}
.skill h3{font-size:18px;margin-bottom:8px;transition:color .14s ease}
.skill p{font-size:14.5px;color:var(--ink-2)}
.skill .n{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-3);display:block;margin-bottom:12px}

/* ---------- people ---------- */
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.person{background:var(--card);border:1px solid var(--rule);border-radius:5px;padding:28px 26px}
.person h3{font-size:21px}
.person .role{font-size:14.5px;color:var(--ink-2);margin-top:10px;line-height:1.5}
.person .role span{display:block}

/* ---------- footer ---------- */
footer{padding:54px 0 66px;color:var(--ink-3);font-size:14.5px;background:var(--paper-2);border-top:1px solid var(--rule)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
footer h4{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);font-weight:500;margin-bottom:14px}
footer a{color:var(--ink-2);text-decoration:none;display:block;padding:4px 0}
footer a:hover{color:var(--green)}
.colophon{margin-top:40px;padding-top:22px;border-top:1px solid var(--rule-2);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13.5px}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .modules{grid-template-columns:repeat(3,1fr)}
  .term-grid{grid-template-columns:1fr}
  .people{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .triad{max-width:270px}
  .sec-head{grid-template-columns:1fr;gap:12px}
  .now-card{grid-template-columns:1fr;gap:26px}
  .skills{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .contact-cols{grid-template-columns:1fr !important;gap:32px !important}
  .course{grid-template-columns:104px 1fr;gap:18px}
  .course .meta{grid-column:2;text-align:left;margin-top:4px}
  .silo{grid-template-columns:100px 1fr;gap:18px}
  .silo .who{grid-column:2;text-align:left}
  .course-facts{grid-template-columns:1fr}
  .course-facts > div{border-right:none;border-bottom:1px solid var(--rule)}
  .course-facts > div:last-child{border-bottom:none}
  nav.top{display:none}
  nav.top.open{
    display:flex;position:absolute;top:74px;left:0;right:0;background:var(--card);
    flex-direction:column;gap:0;padding:8px 28px 18px;border-bottom:1px solid var(--rule);box-shadow:var(--shadow);
  }
  nav.top.open a{padding:12px 0;border-bottom:1px solid var(--rule)}
  .menu-btn{display:block}
}
@media (max-width:680px){
  .modules{grid-template-columns:1fr}
  .people{grid-template-columns:1fr}
  .track{grid-template-columns:1fr;gap:6px}
  .brand .sub{display:none}
}
@media (max-width:560px){
  body{font-size:16px}
  :root{--gut:20px}
  .now-card{padding:26px 22px}
  .lede{font-size:18px}
}
@media print{
  .masthead,footer,.btn-row{display:none}
  body{background:#fff;font-size:11pt}
}

/* ---------- focus illustration ---------- */
.focus-illus{
  display:block;width:100%;height:auto;margin-bottom:22px;border-radius:4px;
  mix-blend-mode:multiply;
}
@media (max-width:900px){ .focus-illus{max-width:220px} }

/* ---------- campus strip (direction C) ---------- */
.campus-strip{
  height:124px;
  background-image:url("../images/banner-lewis.jpg");
  background-size:cover;
  background-position:46% 44%;
  position:relative;
  border-bottom:3px solid var(--navy);
}
.campus-strip::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,26,44,.28),rgba(20,26,44,.58));
}
@media (max-width:700px){ .campus-strip{height:88px} }

/* ---------- the framing definition ---------- */
.definition{padding:44px 0 8px}
.definition .word{font-family:Spectral,serif;font-size:15.5px;color:var(--ink-3);letter-spacing:.02em}
.definition .word em{font-style:italic}
.definition .mean{
  font-family:Spectral,serif;font-weight:400;
  font-size:clamp(23px,3.2vw,34px);line-height:1.3;margin-top:10px;
  color:var(--ink);letter-spacing:-.01em;max-width:24ch;
}
.definition .mean b{font-weight:600;color:var(--green)}

/* ---------- disciplines hub ---------- */
.disc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.disc{
  background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--rule-2);
  border-radius:5px;padding:28px 26px;text-decoration:none;color:inherit;
  display:flex;flex-direction:column;gap:10px;transition:transform .14s ease,box-shadow .14s ease;
}
.disc:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.disc-law{border-top-color:var(--law)}
.disc-mgmt{border-top-color:var(--mgmt)}
.disc-sci{border-top-color:var(--sci)}
.disc-k{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.disc h3{font-size:25px}
.disc-law h3{color:var(--law)} .disc-mgmt h3{color:var(--mgmt)} .disc-sci h3{color:var(--sci)}
.disc p{font-size:15px;color:var(--ink-2);flex:1}
.disc-go{font-size:14px;font-weight:500;color:var(--green)}
.disc:hover .disc-go{text-decoration:underline}
@media (max-width:820px){ .disc-grid{grid-template-columns:1fr} }

/* ---------- outbound links get a quiet marker ---------- */
.prose a[href^="http"]::after,.callout a[href^="http"]::after,.facts a[href^="http"]::after,
.now-card a[href^="http"]:not(.btn)::after{content:"\2197";font-size:.78em;margin-left:2px;color:var(--ink-3)}

/* ---------- video ---------- */
.video-wrap{
  position:relative;width:100%;max-width:760px;aspect-ratio:16/9;
  background:var(--navy-deep,#242A3D);border:1px solid var(--rule);border-radius:6px;
  overflow:hidden;box-shadow:var(--shadow);
}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}

/* ---------- portraits + fellows ---------- */
.person .portrait{
  width:96px;height:96px;border-radius:50%;object-fit:cover;display:block;
  margin-bottom:16px;border:1px solid var(--rule);background:var(--paper-2);
}
.person .bio{margin-top:16px;font-size:15px;color:var(--ink-2);line-height:1.55}
.fellows{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.fellow{
  display:flex;gap:20px;align-items:center;background:var(--card);
  border:1px solid var(--rule);border-left:3px solid var(--mgmt);border-radius:5px;padding:22px 24px;
}
.fellow img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid var(--rule)}
.fellow h3{font-size:20px}
.fellow .yr{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mgmt);margin-top:5px}
.fellow .aff{font-size:14.5px;color:var(--ink-2);margin-top:6px}
@media (max-width:820px){ .fellows{grid-template-columns:1fr} }

/* ---------- note under the video ---------- */
.vid-note{
  max-width:760px;margin-top:16px;font-size:14.5px;line-height:1.55;
  color:var(--ink-2);border-left:2px solid var(--rule-2);padding-left:16px;
}
.vid-note strong{color:var(--ink)}

/* ---------- full site banner (homepage) ---------- */
.sitebanner{
  position:relative;overflow:hidden;border-bottom:3px solid var(--navy);
  background-image:url("../images/banner-lewis.jpg");
  background-size:cover;background-position:46% 42%;
}
.sitebanner::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(96deg,
    rgba(18,24,42,.94) 0%, rgba(18,24,42,.80) 38%,
    rgba(0,80,42,.72) 72%, rgba(0,104,54,.92) 100%);
}
.sitebanner-in{
  position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;
  gap:34px;align-items:center;padding-top:38px;padding-bottom:38px;min-height:216px;
}
.sitebanner .lockup img{width:180px;height:43px;display:block}
.sitebanner .lockup p{
  color:#D5E3D9;font-family:Spectral,serif;font-style:italic;
  font-size:14px;line-height:1.5;margin-top:15px;max-width:34ch;
}
.sitebanner .defn{color:#fff;border-left:2px solid rgba(255,255,255,.42);padding-left:24px}
.sitebanner .defn .word{font-family:Spectral,serif;font-size:28px;font-weight:600;letter-spacing:.01em}
.sitebanner .defn .pron{font-family:Spectral,serif;font-style:italic;font-size:15px;color:#C6DACD;margin-top:3px}
.sitebanner .defn .mean{font-family:Spectral,serif;font-size:16px;line-height:1.5;margin-top:13px;color:#EDF4EF;max-width:40ch}
@media (max-width:780px){
  .sitebanner-in{grid-template-columns:1fr;gap:24px;padding-top:30px;padding-bottom:30px;min-height:0}
  .sitebanner .defn{border-left:none;border-top:2px solid rgba(255,255,255,.42);padding-left:0;padding-top:18px}
  .sitebanner .defn .word{font-size:24px}
}

.hero-h1{font-size:clamp(34px,4.8vw,54px);letter-spacing:-.02em;margin-top:16px}
.hero-h1 em{font-style:italic;color:var(--green)}
