/* ==========================================================================
   srinikoushik.com, on the RBL design system (forge/design).

   Tokens live in tokens.css, generated by build.py from forge/design/tokens.
   This file only arranges them. Three typefaces: Source Serif 4 for the
   unboxed document flow, Inter for everything inside a box, IBM Plex Mono
   for dates. Navy anchors, emerald is the one accent. Light and dark ship.
   Nothing below 15px on screen except the uppercase eyebrow and label roles
   the system defines. No shadows: a 1px rule carries elevation.
   ========================================================================== */

/* --------------------------------------------------------------- fonts */

@font-face{
  font-family:'Source Serif 4';
  font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/assets/fonts/source-serif-4-latin-opsz-normal.woff2') format('woff2-variations');
}
@font-face{
  font-family:'Source Serif 4';
  font-style:italic;font-weight:200 900;font-display:swap;
  src:url('/assets/fonts/source-serif-4-latin-opsz-italic.woff2') format('woff2-variations');
}
@font-face{
  font-family:'Inter';
  font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/assets/fonts/inter-latin-opsz-normal.woff2') format('woff2-variations');
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;font-weight:400;font-display:swap;
  src:url('/assets/fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');
}

:root{
  --maxw:1180px;
  --pad:clamp(20px,4vw,40px);
  --ease:cubic-bezier(.22,.61,.21,1);
  --dur:.7s;
  --band:var(--surface-card);
  --mob-1:var(--rbl-navy-ink);
  --mob-2:var(--rbl-navy-body);
  --mob-3:var(--rbl-gray-muted);
  color-scheme:light;
}
[data-theme="dark"]{
  --band:var(--rbl-dark-card);
  --mob-1:var(--rbl-dark-ink);
  --mob-2:var(--rbl-dark-muted);
  --mob-3:var(--rbl-dark-rule);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--surface-page);
  color:var(--text-body);
  font:var(--type-body);
  font-optical-sizing:auto;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;display:block;height:auto}

a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--accent-hover)}
::selection{background:var(--accent-tint);color:var(--text-title)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
.wrap-narrow{max-width:840px;margin:0 auto;padding:0 var(--pad)}

.skip{
  position:absolute;left:-9999px;top:0;background:var(--text-title);color:var(--surface-page);
  font:var(--type-button);padding:14px 20px;z-index:100;
}
.skip:focus{left:0}

/* --------------------------------------------------------------------------
   Type
   -------------------------------------------------------------------------- */

.eyebrow{
  font-family:var(--font-sans);font-size:var(--size-eyebrow);font-weight:600;
  letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;
  color:var(--accent);margin:0 0 14px;line-height:1.3;
}
.eyebrow.muted{color:var(--text-muted)}
.idx{color:var(--text-muted);margin-right:10px;font-weight:500}

h1,h2,h3,h4{color:var(--text-title);text-wrap:balance}
h1{font:var(--type-page-title);letter-spacing:var(--tracking-page-title);margin:0 0 22px;max-width:none}
h2{font:var(--type-section-head);letter-spacing:var(--tracking-section-head);margin:0 0 18px;max-width:none}
h3{font:var(--type-subhead);margin:0 0 10px}
h4{font:var(--type-subhead);font-size:22px;margin:0 0 6px}

p{max-width:var(--measure-reading);margin:0 0 18px}
/* Website measure (Srini, 2026-09-23): titles and section heads span their
   container; ledes run to 84ch. The system's 26ch and 60ch caps are for
   documents and wrap web headings at half the page. */
.lead{font:var(--type-lede);color:var(--text-title);max-width:84ch}
.byline{font:var(--type-lede);color:var(--text-muted);max-width:84ch;margin:0 0 32px}
.note{font:var(--type-body);color:var(--text-muted);max-width:var(--measure-reading)}
.small{font:var(--type-interface);color:var(--text-muted)}

.caption{
  font-family:var(--font-sans);font-size:var(--size-small);line-height:1.5;color:var(--text-muted);
  margin:12px 0 0;display:flex;gap:10px;align-items:baseline;
}
.caption::before{content:"";width:16px;height:1.5px;background:var(--accent);align-self:center;flex:none}

/* The rule under a section head. A plain hairline; it draws in when revealed. */
.dotrule{height:1px;background:var(--border-rule);margin:0 0 30px;transform-origin:left}
.dotrule.brass{height:2px;background:var(--accent)}
.dotrule.faint{background:var(--border-rule)}
.js .dotrule.rv-draw{transform:scaleX(0);transition:transform 1.2s var(--ease) .15s}
.js .dotrule.rv-draw.in{transform:none}

/* The Mobius line work from the jacket, in navy. Strokes come from the
   theme so it reads on either ground. */
.mobius{display:block;width:100%;height:auto}
.mob-line{stroke-width:1.05;stroke:var(--mob-1)}
.mob-line[data-t="2"]{stroke:var(--mob-2)}
.mob-line[data-t="3"]{stroke:var(--mob-3)}
.js .mobius.rv-draw .mob-line{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.6s var(--ease)}
.js .mobius.rv-draw.in .mob-line{stroke-dashoffset:0}
.js .mobius.rv-draw.in .mob-line:nth-child(2n){transition-delay:.3s}
.js .mobius.rv-draw.in .mob-line:nth-child(3n){transition-delay:.6s}

/* --------------------------------------------------------------------------
   Reveal. Additive: without JS, or with reduced motion, everything shows.
   -------------------------------------------------------------------------- */

.js .rv{opacity:0;transform:translateY(20px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease)}
.js .rv.in{opacity:1;transform:none}
.js .rv-group > *{opacity:0;transform:translateY(20px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease)}
.js .rv-group.in > *{opacity:1;transform:none}
.js .rv-group.in > :nth-child(2){transition-delay:.1s}
.js .rv-group.in > :nth-child(3){transition-delay:.2s}
.js .rv-group.in > :nth-child(4){transition-delay:.3s}
.js .rv-group.in > :nth-child(5){transition-delay:.4s}
.js .rv-group.in > :nth-child(n+6){transition-delay:.5s}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important;transition-delay:0s !important}
  .js .rv,.js .rv-group > *{opacity:1;transform:none}
  .js .dotrule.rv-draw{transform:none}
  .js .mobius.rv-draw .mob-line{stroke-dasharray:none;stroke-dashoffset:0}
}

/* --------------------------------------------------------------------------
   Header
   -------------------------------------------------------------------------- */

.site-header{
  position:sticky;top:0;z-index:50;
  background:color-mix(in srgb,var(--surface-page) 92%,transparent);
  backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);
  border-bottom:var(--border-width-rule) solid transparent;
  transition:border-color .3s var(--ease);
}
.site-header.scrolled{border-bottom-color:var(--border-rule)}
.header-inner{
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);
  display:flex;align-items:center;gap:24px;height:64px;
}
.wordmark{
  font-family:var(--font-sans);font-weight:600;font-size:18px;letter-spacing:var(--tracking-wordmark);
  color:var(--text-title);text-decoration:none;white-space:nowrap;margin-right:auto;
}
.wordmark:hover{color:var(--accent)}

.nav{display:flex;align-items:center;gap:clamp(14px,2vw,24px)}
.nav a{
  font-family:var(--font-sans);font-size:var(--size-small);font-weight:500;color:var(--text-muted);
  text-decoration:none;white-space:nowrap;padding:8px 0;border-bottom:2px solid transparent;
}
.nav a:hover{color:var(--text-title)}
.nav a[aria-current="page"]{color:var(--text-title);border-bottom-color:var(--accent)}
.nav .nav-cta{display:none}

.theme-toggle,.nav-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:44px;min-height:44px;background:none;border:1px solid var(--border-rule);
  border-radius:var(--radius-sm);color:var(--text-title);cursor:pointer;
  font:var(--type-button);padding:0 12px;
}
.theme-toggle svg{width:18px;height:18px}
.theme-toggle .sun{display:none}
[data-theme="dark"] .theme-toggle .sun{display:block}
[data-theme="dark"] .theme-toggle .moon{display:none}
.nav-toggle{display:none}

/* --------------------------------------------------------------------------
   Buttons and links
   -------------------------------------------------------------------------- */

.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  background:var(--accent);color:var(--text-on-accent);
  font:var(--type-button);padding:0 22px;border-radius:var(--radius-sm);
  text-decoration:none;border:1px solid var(--accent);cursor:pointer;
  transition:background .2s var(--ease),border-color .2s var(--ease);
}
[data-theme="dark"] .btn{color:var(--rbl-navy-ground)}
.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--text-on-accent)}
[data-theme="dark"] .btn:hover{color:#fff}
.btn.ghost{background:transparent;color:var(--text-title);border-color:var(--border-strong)}
.btn.ghost:hover{border-color:var(--text-title);background:transparent;color:var(--text-title)}
.btn.small{min-height:44px;padding:0 16px}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

.textlink{
  font-family:var(--font-sans);font-size:var(--size-button);font-weight:600;
  color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;
}
.textlink::after{content:"\2192";margin-left:6px;transition:transform .25s var(--ease)}
.textlink:hover::after{transform:translateX(4px)}

/* --------------------------------------------------------------------------
   Sections
   -------------------------------------------------------------------------- */

.section{padding:var(--section-gap) 0}
.section.tight{padding:calc(var(--section-gap) * .6) 0}
.section.paper,.band{background:var(--band);border-top:1px solid var(--border-rule);border-bottom:1px solid var(--border-rule)}
.section-head{margin:0 0 clamp(26px,4vw,40px)}

/* Hero */
.hero{padding:clamp(32px,6vw,84px) 0 clamp(36px,5vw,64px);position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(36px,5vw,72px);align-items:center;position:relative;z-index:1}
.hero h1{max-width:none}
.js .hero .hero-in{opacity:0;transform:translateY(22px)}
.js .loaded .hero .hero-in{opacity:1;transform:none;transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .loaded .hero .hero-in:nth-child(2){transition-delay:.12s}
.js .loaded .hero .hero-in:nth-child(3){transition-delay:.24s}
.js .loaded .hero .hero-in:nth-child(4){transition-delay:.36s}
.js .hero .photo-frame{opacity:0}
.js .loaded .hero .photo-frame{opacity:1;transition:opacity 1s var(--ease) .3s}
@media (prefers-reduced-motion:reduce){.js .hero .hero-in,.js .hero .photo-frame{opacity:1;transform:none}}
.hero-mobius{position:absolute;left:-6%;bottom:-16%;width:58%;max-width:760px;opacity:.14;pointer-events:none;z-index:0}

.photo-frame{position:relative}
.photo-frame img{border-radius:var(--radius-lg);border:1px solid var(--border-rule)}

.page-hero{padding:clamp(36px,7vw,88px) 0 clamp(30px,5vw,52px);border-bottom:1px solid var(--border-rule);position:relative;overflow:hidden}
.page-hero > .wrap{position:relative;z-index:1}
.page-hero .lead{margin-top:20px}
.page-hero .mobius-corner{position:absolute;right:-140px;top:50%;transform:translateY(-50%);width:520px;opacity:.28;pointer-events:none}
[data-theme="dark"] .page-hero .mobius-corner{filter:invert(1);opacity:.18}
@media (max-width:1080px){.page-hero .mobius-corner{display:none}}

/* Credibility band */
.band{padding:34px 0}
.logos{display:flex;flex-wrap:wrap;gap:14px 40px;justify-content:center;margin:0 0 20px;padding:0;list-style:none}
.logos li{font-family:var(--font-sans);font-weight:600;font-size:18px;color:var(--text-muted)}
.awards{
  display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;
  font-family:var(--font-sans);font-size:var(--size-small);color:var(--text-muted);margin:0;padding:0;list-style:none;
}
.awards li{display:flex;align-items:center;gap:16px}
.awards li:not(:last-child)::after{content:"\00b7";color:var(--border-strong)}

/* Grids and cards. Everything inside a card is Inter. */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(36px,5vw,64px);align-items:start}

.card{
  background:var(--surface-card);border:1px solid var(--border-rule);border-radius:var(--radius-lg);
  border-top:var(--border-width-accent) solid var(--accent);padding:22px 22px 18px;
}
.card h3{font:var(--type-card-title);color:var(--text-title);margin:0 0 8px}
.card p{font:var(--type-interface);color:var(--text-body);margin:0 0 12px}
.card .eyebrow{margin-bottom:10px}
.card .textlink{margin-top:2px}

/* The keynote arc: an unboxed numbered list, so serif. */
.arc{list-style:none;margin:0;padding:0;counter-reset:arc}
.arc li{counter-increment:arc;position:relative;padding:0 0 28px 56px;border-left:1px solid var(--border-rule);margin-left:16px}
.arc li:last-child{border-left-color:transparent;padding-bottom:0}
.arc li::before{
  content:counter(arc,decimal-leading-zero);position:absolute;left:-17px;top:0;
  font-family:var(--font-sans);font-size:var(--size-small);font-weight:600;color:var(--accent);
  background:var(--surface-page);width:34px;height:34px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--border-rule);border-radius:50%;
}
.arc p{margin:0;max-width:58ch}

.rooms{display:flex;flex-wrap:wrap;gap:var(--gap-tight);list-style:none;margin:0;padding:0}
.rooms li{
  font-family:var(--font-sans);font-size:var(--size-small);font-weight:500;color:var(--text-title);
  background:var(--surface-tint);border-radius:var(--radius-pill);padding:9px 16px;
}

.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.photo-grid figure,.wide-photo{margin:0}
.photo-grid .ph,.wide-photo .ph{overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--border-rule)}

/* Tables */
.tbl{width:100%;border-collapse:collapse;font:var(--type-table)}
.tbl th{
  text-align:left;font-size:var(--size-label);letter-spacing:var(--tracking-label);text-transform:uppercase;
  color:var(--text-muted);font-weight:600;padding:0 18px 12px 0;border-bottom:1px solid var(--border-rule);
}
.tbl td{padding:15px 18px 15px 0;border-bottom:1px solid var(--border-rule);vertical-align:top;color:var(--text-body)}
.tbl td.n{font-weight:600;font-size:var(--size-body-interface);color:var(--text-title);white-space:nowrap}
.tbl td.len{color:var(--accent);white-space:nowrap;font-weight:500}
.tbl td.yr{color:var(--text-title);font-weight:500;white-space:nowrap}
.tbl td.mono,.mono{font-family:var(--font-mono);font-size:var(--size-mono)}
.tbl tr:last-child td{border-bottom:none}

/* Srini's line: a pull quote on the navy ground, both themes. */
.line-moment{background:var(--rbl-navy-ground);color:#fff;padding:clamp(56px,10vw,120px) var(--pad);position:relative;overflow:hidden}
[data-theme="dark"] .line-moment{border-top:1px solid var(--border-rule);border-bottom:1px solid var(--border-rule)}
.line-moment p{
  font:var(--type-quote);font-style:italic;font-size:clamp(26px,3.6vw,38px);
  color:#fff;width:100%;max-width:820px;margin:0 auto;padding-left:22px;
  border-left:4px solid var(--rbl-emerald-dark);position:relative;z-index:1;
}
.line-moment cite{
  display:block;width:100%;max-width:820px;margin:22px auto 0;padding-left:26px;
  font-family:var(--font-sans);font-style:normal;font-size:var(--size-small);font-variant:small-caps;letter-spacing:.06em;
  color:var(--rbl-emerald-dark);position:relative;z-index:1;
}
.line-moment .mobius-bg{position:absolute;right:-8%;bottom:-38%;width:56%;min-width:420px;opacity:.14;pointer-events:none}
.line-moment .mob-line{stroke:#fff !important}

/* Booking form */
.form-shell{background:var(--surface-card);border:1px solid var(--border-rule);border-radius:var(--radius-xl);padding:clamp(22px,4vw,36px)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.field{display:flex;flex-direction:column;gap:7px}
.field.full{grid-column:1 / -1}
.field label{font-family:var(--font-sans);font-size:var(--size-label);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.field label .req{color:var(--accent)}
.field input,.field select,.field textarea{
  font-family:var(--font-sans);font-size:16px;color:var(--text-title);background:var(--surface-page);
  border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:11px 13px;width:100%;min-height:44px;
}
.field textarea{min-height:110px;resize:vertical;line-height:1.55}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:2px solid var(--accent-tint);outline-offset:0}
.field .hint{font-family:var(--font-sans);font-size:var(--size-small);color:var(--text-muted)}
.field .err{font-family:var(--font-sans);font-size:var(--size-small);color:var(--state-priority);display:none}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--state-priority)}
.field.invalid .err{display:block}
.form-status{font-family:var(--font-sans);font-size:var(--size-small);line-height:1.6;padding:14px 18px;border-radius:var(--radius-sm);margin:0 0 20px;display:none}
.form-status.ok{display:block;background:var(--accent-tint);border-left:4px solid var(--accent);color:var(--text-title)}
.form-status.bad{display:block;background:var(--rbl-priority-surface);border-left:4px solid var(--state-priority);color:var(--rbl-priority-text)}

/* Writing list */
.posts{list-style:none;margin:0;padding:0}
.posts li{border-bottom:1px solid var(--border-rule);padding:22px 0}
.section-head .dotrule{margin-bottom:0}
.posts h3{font:var(--type-subhead);margin:0 0 6px}
.posts h3 a{color:var(--text-title);text-decoration:none}
.posts h3 a:hover{color:var(--accent)}
.posts .meta{font-family:var(--font-sans);font-size:var(--size-small);color:var(--text-muted);margin:0 0 6px}
.posts .meta time{font-family:var(--font-mono);font-size:var(--size-mono)}
.posts p{margin:0;color:var(--text-muted)}

/* Book */
.jacket-photo{position:relative;max-width:380px}
.jacket-photo img{border-radius:4px;border:1px solid var(--border-rule)}
.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 0}
.format{background:var(--surface-card);border:1px solid var(--border-rule);border-radius:var(--radius-md);padding:16px}
.format .fname{font-family:var(--font-sans);font-weight:600;font-size:var(--size-body-interface);color:var(--text-title);margin:0}
.format .fprice{font-family:var(--font-sans);font-size:var(--size-small);color:var(--text-muted);margin:2px 0 12px}
.format .btn{width:100%}

/* Closing ask and footer */
.closing{padding:var(--section-gap) 0;text-align:center;border-top:1px solid var(--border-rule)}
.closing h2{margin-left:auto;margin-right:auto}
.closing p{margin:0 auto 26px;max-width:52ch;color:var(--text-muted)}

.site-footer{background:var(--band);border-top:var(--border-width-rule) solid var(--border-rule);padding:44px 0 52px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.footer-grid h4{font-family:var(--font-sans);font-size:var(--size-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);font-weight:600;margin:0 0 12px}
.footer-grid .fname{font-family:var(--font-sans);font-weight:600;font-size:17px;color:var(--text-title);margin:0 0 8px}
.footer-grid ul{list-style:none;margin:0;padding:0}
.footer-grid li{margin:0}
.footer-grid a{font-family:var(--font-sans);font-size:var(--size-small);color:var(--text-muted);text-decoration:none;display:inline-block;padding:6px 0}
.footer-grid a:hover{color:var(--text-title)}
.colophon{
  margin-top:32px;padding-top:20px;border-top:1px solid var(--border-rule);
  font-family:var(--font-sans);font-size:var(--size-small);color:var(--text-muted);
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

@media (max-width:980px){
  .grid-feature{grid-template-columns:1fr;gap:32px}
  .grid-3{grid-template-columns:1fr 1fr}
  .photo-grid{grid-template-columns:1fr 1fr}
  .hero-mobius{display:none}
}

@media (max-width:860px){
  .hero-grid{grid-template-columns:1fr;gap:32px}
  .hero-grid .photo-frame{max-width:420px}
  /* Phone: a shorter crop so the first two screens carry words (Sept 27, 2026). */
  .hero-grid .photo-frame img{aspect-ratio:4/3;width:100%;object-fit:cover;object-position:center 22%}
  .grid-2,.grid-3,.form-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}

  .nav-toggle{display:inline-flex}
  .header-inner{gap:10px}
  .nav{
    display:none;position:absolute;top:64px;left:0;right:0;
    background:var(--surface-page);border-bottom:1px solid var(--border-rule);
    flex-direction:column;align-items:stretch;gap:0;padding:6px var(--pad) 18px;
  }
  .nav[data-open="true"]{display:flex}
  .nav a{padding:13px 0;border-bottom:1px solid var(--border-rule);font-size:19px}
  .nav a[aria-current="page"]{color:var(--accent);border-bottom-color:var(--border-rule)}
  .header-cta{display:none}
  .nav .nav-cta{display:flex;margin-top:14px;color:var(--text-on-accent);border-bottom:none}
  [data-theme="dark"] .nav .nav-cta{color:var(--rbl-navy-ground)}
}

@media (max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  .photo-grid{grid-template-columns:1fr}
  .formats{grid-template-columns:1fr}
  .jacket-photo{max-width:240px}
  .arc li{padding-left:44px}
  .tbl,.tbl thead,.tbl tbody,.tbl tr,.tbl td{display:block;width:100%}
  .tbl thead{display:none}
  .tbl tr{border-bottom:1px solid var(--border-rule);padding:14px 0}
  .tbl td{border:none;padding:2px 0}
}

@media print{
  .site-header,.closing,.nav-toggle,.theme-toggle,.form-shell{display:none}
  body{font-size:11pt}
}
.format .btn{padding:0 10px;white-space:nowrap}
@media (max-width:560px){.awards{flex-direction:column;gap:4px}.awards li::after{display:none}}

/* Roomy section and the centered pull quote used between sections. */
.section.roomy{padding:calc(var(--section-gap) * 1.2) 0}
.pull{font:var(--type-quote);font-style:italic;color:var(--text-title);max-width:var(--measure-quote)}
.pull + cite,.pull + .cite{display:block;font-family:var(--font-sans);font-style:normal;font-size:var(--size-small);font-variant:small-caps;letter-spacing:.06em;color:var(--accent)}
.section-head .note{max-width:84ch}
