/* The Amsterdam Adventure: book design layer (phase B).
   Typography roles come from Customize > Book design as CSS variables (printed inline).
   Every decoration is scoped to its own body class, so each can be switched off alone. */

/* ---------- paper and type roles ---------- */
:root {
  --bg: #f7f3ea; --surface: #fffcf6; --shade: #f0ebe0; --shade-2: #e7e0d1;
  --line: #d8d0bf; --line-soft: #e7e0d2;
  --sans: var(--amx-f-body, Verdana, Geneva, sans-serif);
  --ui: var(--amx-f-nav, "Helvetica Neue", Helvetica, Arial, sans-serif);
  --amx-head-scale: 1;
}
body.amx { font-family: var(--amx-f-body); font-size: var(--amx-s-body, 15px); font-weight: var(--amx-w-body, 400); }
.amx-prose { font-size: var(--amx-s-body, 15px); }

/* headings: soft, slightly wonky 1970s serif by default */
.amx-page-head__title, .amx-chapter-head__title, .amx-topic-head__title, .amx-band__title,
.amx-section-title, .amx-record__title, .amx-strip__title, .amx-prose h2, .amx-prose h3,
.amx-card__title, .amx-pager__title, .amx-event__title, .amx-row__title, .amx-look-inside__title,
.amx-video__title, .amx-result__title, .amx-slider__title, .amx-timeline__yearlabel {
  font-family: var(--amx-f-head); font-weight: var(--amx-w-head, 560);
  font-variation-settings: "SOFT" 100, "WONK" 1; font-optical-sizing: auto; letter-spacing: -.005em;
}
.amx-page-head__title, .amx-chapter-head__title, .amx-topic-head__title { font-size: calc(clamp(1.6rem, 2.9vw, 2.35rem) * var(--amx-head-scale)); line-height: 1.12; }
.amx-band__title { font-size: calc(clamp(1.7rem, 3.2vw, 2.5rem) * var(--amx-head-scale)); }
.amx-home-title { font-size: calc(clamp(1.9rem, 4.4vw, 3.3rem) * var(--amx-head-scale)); line-height: 1.04; }
@media (max-width: 640px) { .amx-home-title { font-size: calc(clamp(2.2rem, 11vw, 2.9rem) * var(--amx-head-scale)); } }
.amx-section-title { font-size: calc(clamp(1.3rem, 2.1vw, 1.7rem) * var(--amx-head-scale)); }
.amx-record__title { font-size: calc(clamp(1.45rem, 2.5vw, 2rem) * var(--amx-head-scale)); }
.amx-prose h2 { font-size: calc(1.45rem * var(--amx-head-scale)); }
.amx-prose h3 { font-size: calc(1.18rem * var(--amx-head-scale)); }
.amx-slider__title { font-size: 15px; line-height: 1.3; }

/* navigation and labels */
.amx-nav__list a, .amx-tool, .amx-footer__menu a { font-family: var(--amx-f-nav); font-size: var(--amx-s-nav, 13px); font-weight: var(--amx-w-nav, 400); }
.amx-chapters__link, .amx-id__text, .amx-label, .amx-slider__label, .amx-footer__heading { font-family: var(--amx-f-nav); }

/* lists, quotations, image titles */
.amx-prose li { font-family: var(--amx-f-list); font-size: var(--amx-s-list, 15px); font-weight: var(--amx-w-list, 400); }
.amx-prose blockquote, .amx-prose .wp-block-quote, .amx-prose .wp-block-pullquote {
  font-family: var(--amx-f-quote); font-size: var(--amx-s-quote, 19px); font-weight: var(--amx-w-quote, 400);
  font-variation-settings: "SOFT" 100, "WONK" 0; line-height: 1.5; color: var(--ink);
}
.amx-prose blockquote p { font: inherit; }
.amx-mosaic__title { font-family: var(--amx-f-image); font-size: var(--amx-s-image, 17px); font-weight: var(--amx-w-image, 700); font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: .005em; }
@media (max-width: 600px) { .amx-mosaic__title { font-size: calc(var(--amx-s-image, 17px) * .9); } }

/* ---------- drop caps: supplied hand-drawn letters, about three lines tall ---------- */
.amx-dropcap { float: left; display: block; height: calc(var(--amx-s-body, 15px) * 1.75 * 3 - 2px); margin: .32em 10px 0 -2px; shape-outside: margin-box; }
.amx-dropcap img { display: block; height: 100%; width: auto; max-width: none; }
.amx-has-dropcap::after { content: ""; display: table; clear: both; }
@media (max-width: 520px) { .amx-dropcap { height: calc(var(--amx-s-body, 15px) * 1.75 * 2.6); } }

/* ---------- quotation leaves (independent) ---------- */
.amx-quote-leaves .amx-prose blockquote, .amx-quote-leaves .amx-prose .wp-block-quote { position: relative; border-left: 0; padding: 0 0 0 58px; }
.amx-quote-leaves .amx-prose blockquote::before, .amx-quote-leaves .amx-prose .wp-block-quote::before {
  content: ""; position: absolute; left: 0; top: .18em; width: 46px; height: 33px;
  background: url("../images/taa/minimalistic-hippiedesign-option/typographic-elements/quotation.png") left top / contain no-repeat;
}
@media (min-width: 1400px) {
  .amx-quote-leaves .amx-prose blockquote, .amx-quote-leaves .amx-prose .wp-block-quote { padding-left: 0; }
  .amx-quote-leaves .amx-prose blockquote::before, .amx-quote-leaves .amx-prose .wp-block-quote::before { left: -58px; }
}

/* ---------- ornaments: shared rules, then the two sets ---------- */
.amx-orn .amx-prose ul { list-style: none; padding-left: 1.75em; }
.amx-orn .amx-prose ul > li { position: relative; }
.amx-orn .amx-prose ul > li::before { content: ""; position: absolute; left: -1.55em; top: .62em; width: 1.05em; height: .55em; background: var(--amx-bullet-1) center / contain no-repeat; }
.amx-orn .amx-prose ul ul > li::before { background-image: var(--amx-bullet-2); width: .8em; height: .45em; top: .66em; }
.amx-orn .amx-prose ul ul ul > li::before { background-image: var(--amx-bullet-3); }
.amx-orn .amx-prose hr { height: 30px; width: min(100%, 300px); margin-inline: auto; border: 0; background: var(--amx-divider) center / contain no-repeat; }
.amx-orn .amx-page-head__title::after, .amx-orn .amx-chapter-head__title::after, .amx-orn .amx-topic-head__title::after, .amx-orn .amx-section-title::after {
  content: ""; display: block; width: 150px; max-width: 70%; height: 18px; margin-top: 14px;
  background: var(--amx-accent-rule) left center / contain no-repeat; opacity: .95;
}
.amx-orn article.amx-prose > p:last-of-type::after {
  content: ""; display: inline-block; width: 1.05em; height: 1.05em; margin-left: .45em; vertical-align: -.16em;
  background: var(--amx-endmark) center / contain no-repeat;
}
.amx-orn--ultra {
  --amx-bullet-1: url("../images/taa/ultra-minimalist-hippiedesign-option/bullets/level-1/front-of-each-paragraph--ornament-blueband-lilac-blossom.png");
  --amx-bullet-2: url("../images/taa/ultra-minimalist-hippiedesign-option/bullets/level-2-4/taa-bullet-level-4-blueband-lilac-blossom.png");
  --amx-bullet-3: url("../images/taa/ultra-minimalist-hippiedesign-option/bullets/level-2-4/taa-bullet-level-4-blueband-lilac-blossom.png");
  --amx-divider: url("../images/taa/ultra-minimalist-hippiedesign-option/separators/taa-separator-01-yellow-flower-vine.png");
  --amx-accent-rule: url("../images/taa/ultra-minimalist-hippiedesign-option/separators/taa-separator-01-yellow-flower-vine.png");
  --amx-endmark: url("../images/taa/ultra-minimalist-hippiedesign-option/typographic-elements/taa-ornament-pinkband-white-blossom.png");
}
.amx-orn--minimal {
  --amx-bullet-1: url("../images/taa/minimalistic-hippiedesign-option/bullets/level-1/leaf.png");
  --amx-bullet-2: url("../images/taa/minimalistic-hippiedesign-option/bullets/level-2/taa-ornament-quote-pink-blossom.png");
  --amx-bullet-3: url("../images/taa/minimalistic-hippiedesign-option/bullets/level-3/taa-bullet-level-4-blueband-lilac-blossom.png");
  --amx-divider: url("../images/taa/minimalistic-hippiedesign-option/separators/taa-separator-02-yellow-botanical-rule.png");
  --amx-accent-rule: url("../images/taa/minimalistic-hippiedesign-option/separators/taa-separator-04-pink-flower-vine.png");
  --amx-endmark: url("../images/taa/minimalistic-hippiedesign-option/typographic-elements/taa-ornament-pinkband-cross-flower.png");
}
.amx-orn--minimal .amx-prose ul > li::before { width: .72em; height: 1.02em; top: .32em; left: -1.35em; }
.amx-orn--minimal .amx-prose ul ul > li::before { width: .8em; height: .66em; top: .5em; }

/* ---------- corner illustration (independent) ---------- */
.amx-lady .amx-main { position: relative; }
.amx-lady .amx-main::after {
  content: ""; display: block; width: clamp(130px, 15vw, 220px); aspect-ratio: 619 / 936;
  margin: clamp(10px, 2vw, 28px) clamp(10px, 3vw, 48px) 0 auto;
  background: url("../images/taa/ultra-minimalist-hippiedesign-option/background-floats/right.corner.bottom.page.decoration.png") right bottom / contain no-repeat;
  pointer-events: none;
}

/* ---------- paisley background (independent) ---------- */
.amx-paisley::before {
  content: ""; position: fixed; z-index: -1; top: 14vh; right: -6vw; width: min(56vw, 680px); aspect-ratio: 1210 / 1550;
  background: url("../images/taa/ultra-minimalist-hippiedesign-option/background-floats/spacer-decorative-orbackground.png") center / contain no-repeat;
  filter: grayscale(1); opacity: .1; pointer-events: none;
}
@media (max-width: 700px) { .amx-paisley::before { width: 90vw; right: -30vw; opacity: .08; } }

@media print { .amx-lady .amx-main::after, .amx-paisley::before { display: none; } }
