/* Page looks: per-look composition layered over profile.css.
   Each look only restyles server-rendered markup, so every page keeps the same
   content, links, analytics and accessibility whichever look is chosen. */

/* ---- Shared refinements (all looks) ---------------------------------- */
.public-page .public-section-nav:has(> :only-child) { display: none; }
.public-page .public-header:has(.public-cover-image) .public-cover-image {
  display: block;
  width: 100%;
  height: 188px;
  border-radius: 22px;
  overflow: hidden;
}
.public-page .public-header:has(.public-cover-image) .public-avatar {
  margin-top: -52px;
  position: relative;
  box-shadow: 0 0 0 4px var(--profile-canvas);
}
.public-page .public-link-thumbnail { border-radius: 10px; object-fit: cover; }
.public-page:has(.public-cover-image) :is(.public-page-home, .public-page-share),
.public-page:has(.public-afterglow-hero .public-content-product-media img) :is(.public-page-home, .public-page-share) { color: #fff; mix-blend-mode: difference; }

/* Creator conversion card: keep the signup quiet and in the look's ink. */
.public-page .public-footer-creator {
  box-sizing: border-box;
  display: grid;
  width: 100%;
  min-width: 0;
  gap: .625rem;
  margin: 0 auto 1rem;
  padding: 1rem;
  border: 1px solid var(--profile-border);
  border-radius: 8px;
  background: transparent;
  color: var(--profile-ink);
  text-align: left;
}
.public-page .public-footer-creator-brand {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: .55rem;
  color: var(--profile-muted);
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.3;
}
.public-page .public-footer-mark {
  box-sizing: border-box;
  display: none;
}
.public-page .public-footer-creator h2 {
  min-width: 0;
  margin: 0;
  color: var(--profile-ink);
  font-size: clamp(1rem, 3.8vw, 1.2rem);
  font-weight: 600;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.public-page .public-footer .public-footer-creator a.public-footer-cta {
  box-sizing: border-box;
  display: inline-flex;
  width: max-content;
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  height: auto;
  align-items: center;
  justify-content: flex-start;
  justify-self: start;
  margin: 0;
  border: 0;
  border-radius: 4px;
  padding: 0 .25rem;
  background: transparent;
  box-shadow: none;
  color: var(--profile-muted);
  font: 600 .875rem/1.25 Inter, ui-sans-serif, system-ui, sans-serif;
  overflow-wrap: anywhere;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.public-page .public-footer .public-footer-creator a.public-footer-cta:hover {
  border-color: transparent;
  background: transparent;
  color: var(--profile-ink);
}
.public-page .public-footer .public-footer-creator a.public-footer-cta:focus-visible {
  outline: 3px solid var(--profile-accent);
  outline-offset: 3px;
}
.public-page .public-footer .public-footer-made {
  margin: 0;
  text-align: center;
  font-size: .75rem;
}
.public-page .public-footer .public-footer-made a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  color: var(--profile-muted);
  text-decoration: none;
}
.public-page .public-footer .public-footer-nav {
  gap: 0 .75rem;
  margin-top: .75rem;
}
.public-page .public-footer .public-footer-nav a,
.public-page .public-footer .public-footer-nav button {
  min-height: 32px;
  color: var(--profile-muted);
  font-size: .6875rem;
  line-height: 1.3;
}

/* ---- Qoralo (canonical, Free): clean and considered ------------------- */
.public-page.public-preset-canonical:not([class*="public-template-"]) .public-link {
  border-radius: 16px;
  box-shadow: 0 1px 2px rgb(17 19 35 / .06);
}

/* ---- Warm (Free): soft natural tones, terracotta accent ---------------- */
.public-page.public-preset-warm:not([class*="public-template-"]) {
  --profile-paper: #fffaf3;
  --profile-ink: #3a2a20;
  --profile-text: #3a2a20;
  --profile-muted: #7a6455;
  --profile-border: rgb(58 42 32 / .12);
}
.public-page.public-preset-warm.public-background-auto:not([class*="public-template-"]) { --profile-canvas: #f7efe4; }
.public-page.public-preset-warm.public-accent-auto:not([class*="public-template-"]) { --profile-accent: #b8613a; --profile-accent-soft: #f5e1d3; --profile-accent-ink: #fff; }
.public-page.public-preset-warm.public-typography-auto:not([class*="public-template-"]) .public-name { font-family: Georgia, 'Times New Roman', serif; font-weight: 500; letter-spacing: 0; }
.public-page.public-preset-warm:not([class*="public-template-"]) .public-link { border: 2px solid var(--profile-ink); border-radius: 8px; background: var(--profile-paper); color: var(--profile-ink); box-shadow: 2px 2px 0 var(--profile-ink); }
.public-page.public-preset-warm:not([class*="public-template-"]) .public-link-featured .public-link { background: var(--profile-accent); color: var(--profile-accent-ink); border-color: var(--profile-ink); }

/* ---- Soft (Free): a little more color, pillowy cards ------------------- */
.public-page.public-preset-soft:not([class*="public-template-"]) {
  --profile-paper: #fff;
  --profile-muted: #5f5873;
  background: var(--profile-canvas) !important;
}
.public-page.public-preset-soft.public-background-auto:not([class*="public-template-"]) { --profile-canvas: #efeafc; }
.public-page.public-preset-soft.public-accent-auto:not([class*="public-template-"]) { --profile-accent: #7a5cf0; --profile-accent-soft: #ece6ff; --profile-accent-ink: #fff; }
.public-page.public-preset-soft:not([class*="public-template-"]) .public-link { border: 1px solid var(--profile-border); border-radius: 16px; background: var(--profile-paper); color: var(--profile-ink); box-shadow: none; }
.public-page.public-preset-soft:not([class*="public-template-"]) .public-link-featured .public-link { background: var(--profile-accent); color: var(--profile-accent-ink); }
.public-page.public-preset-soft:not([class*="public-template-"]) .public-link-thumbnail { border-radius: 50%; }

/* ---- Minimal (Free): dark, text-first ---------------------------------- */
.public-page.public-template-minimal .public-header .public-cover-image { display: none; }
.public-page.public-template-minimal .public-header:has(.public-cover-image) .public-avatar { margin-top: 0; box-shadow: none; }
.public-page.public-template-minimal .public-link-thumbnail { display: none; }
.public-page.public-template-minimal .public-links:not(.public-bento-grid) { gap: 0; }
.public-page.public-template-minimal .public-link-card:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) { border-bottom: 1px solid var(--profile-border); }
.public-page.public-template-minimal .public-link { border-radius: 0; padding-block: 18px; justify-content: flex-start; text-align: start; }
.public-page.public-template-minimal.public-button-solid .public-link { border: 0; background: transparent; }
.public-page.public-template-minimal.public-button-soft .public-link { border: 0; background: var(--profile-accent-soft); }
.public-page.public-template-minimal.public-button-outline .public-link { border: 0; background: transparent; }
.public-page.public-template-minimal.public-button-outline .public-link-card:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) { border-bottom-color: var(--profile-accent); }
.public-page.public-template-minimal .public-link-title { display: block; max-height: none; overflow: visible !important; -webkit-line-clamp: unset; font-size: clamp(1.35rem, 5.5vw, 2rem); font-weight: 550; line-height: 1.1; }
.public-page.public-template-minimal .public-link-card.public-align-center .public-link { justify-content: center; text-align: center; }
.public-page.public-template-minimal .public-link-card.public-align-right .public-link { justify-content: flex-end; text-align: right; }

/* ---- Gallery (Pro): let the work lead ---------------------------------- */
.public-page.public-template-gallery { --profile-canvas: #f3ede6; }
.public-page.public-template-gallery .public-header { display: grid; grid-template-columns: 56px 1fr; column-gap: 14px; align-items: center; text-align: left; }
.public-page.public-template-gallery .public-header .public-cover-image { display: none; }
.public-page.public-template-gallery .public-header .public-avatar { grid-row: span 2; width: 56px; height: 56px; margin: 0; box-shadow: none; }
.public-page.public-template-gallery .public-identity, .public-page.public-template-gallery .public-name-row { text-align: left; align-items: flex-start; }
.public-page.public-template-gallery .public-name { font-size: 1.25rem; }
.public-page.public-template-gallery .public-bio { text-align: left; margin-inline: 0; }
.public-page.public-template-gallery .public-content-gallery ul { grid-template-columns: 1fr 1fr; gap: 6px; }
.public-page.public-template-gallery .public-content-gallery li:first-child { grid-column: span 2; }
.public-page.public-template-gallery .public-content-gallery img { aspect-ratio: 4 / 5; border-radius: 4px; }
.public-page.public-template-gallery .public-content-gallery li:first-child img { aspect-ratio: 3 / 2; }
.public-page.public-template-gallery .public-shell { display: flex; flex-direction: column; }
.public-page.public-template-gallery .public-header { order: 0; }
.public-page.public-template-gallery .public-social-links { order: 1; }
.public-page.public-template-gallery .public-publication { order: 2; }
.public-page.public-template-gallery .public-featured-section { order: 3; }
.public-page.public-template-gallery .public-footer { order: 9; }
.public-page.public-template-gallery .public-name-row { justify-items: start; text-align: left; }
.public-page.public-template-gallery .public-link { border-radius: 6px; background: #fffaf4; color: #3b302c; }
.public-page.public-template-gallery .public-link-thumbnail { width: 64px; height: 64px; border-radius: 4px; }

/* ---- Editorial (Pro): a magazine feel ---------------------------------- */
.public-page.public-template-editorial { --profile-canvas: #e9e0d6; }
.public-page.public-template-editorial .public-name,
.public-page.public-template-editorial .public-content-header { font-family: LiterataQ, Georgia, serif !important; font-weight: 500; }
.public-page.public-template-editorial .public-name { font-size: 2.1rem; line-height: 1.05; letter-spacing: -.02em; }
.public-page.public-template-editorial .public-header .public-cover-image { height: 300px; border-radius: 0; }
.public-page.public-template-editorial .public-content-header { font-size: 2rem; line-height: 1.08; text-transform: none; letter-spacing: -.02em; }
.public-page.public-template-editorial .public-content-media img { border-radius: 0; }
.public-page.public-template-editorial .public-link { background: transparent; border: 0; border-top: 1px solid rgb(46 40 39 / .25); border-radius: 0; padding-inline: 0; }
.public-page.public-template-editorial .public-link-featured .public-link { background: #2e2827; color: #f4eee8; border-radius: 0; padding-inline: 18px; }
.public-page.public-template-editorial .public-link-thumbnail { display: none; }

/* ---- Poster (Pro): bold and graphic ------------------------------------ */
.public-page.public-template-poster { --profile-canvas: #f2f1ea; --poster-lime: #d7ff3a; }
.public-page.public-template-poster .public-name { font-family: BricolageQ, Inter, sans-serif !important; font-weight: 800; font-size: 3.4rem; line-height: .86; letter-spacing: -.05em; text-transform: uppercase; }
.public-page.public-template-poster .public-header .public-cover-image { height: 260px; border-radius: 0; }
.public-page.public-template-poster .public-content-announcement { background: var(--poster-lime); color: #18210d; border: 0; border-radius: 0; font-weight: 750; text-transform: uppercase; letter-spacing: .02em; }
.public-page.public-template-poster .public-link { border-radius: 0; background: #18210d; color: #f4f3ee; border: 0; }
.public-page.public-template-poster .public-link-featured .public-link { background: var(--poster-lime); color: #18210d; }
.public-page.public-template-poster .public-link-thumbnail { border-radius: 0; }
.public-page.public-template-poster .public-link-title { font-weight: 750; text-transform: uppercase; letter-spacing: .01em; }

/* ---- Journal (Pro): personal and quiet --------------------------------- */
.public-page.public-template-journal { --profile-canvas: #f1e9dd; }
.public-page.public-template-journal .public-name, .public-page.public-template-journal .public-content-header { font-family: LiterataQ, Georgia, serif !important; }
.public-page.public-template-journal .public-content-header { font-size: 1.75rem; line-height: 1.15; font-weight: 500; }
.public-page.public-template-journal .public-section-nav { display: flex; gap: 22px; justify-content: flex-start; border-bottom: 1px solid rgb(63 51 56 / .2); padding-bottom: 10px; }
.public-page.public-template-journal .public-section-nav a { text-decoration: none; font-weight: 600; }
.public-page.public-template-journal .public-content-media img { border-radius: 4px; }
.public-page.public-template-journal .public-link { background: transparent; border: 0; border-bottom: 1px dashed rgb(63 51 56 / .28); border-radius: 0; padding-inline: 0; }
.public-page.public-template-journal .public-link-thumbnail { border-radius: 4px; }

/* ---- Blush (Pro): flat pink ground ------------------------------------- */
.public-page.public-template-blush { background: var(--profile-canvas) !important; }
.public-page.public-template-blush .public-header .public-avatar { box-shadow: none; }
.public-page.public-template-blush .public-link { background: rgb(255 255 255 / .62); border: 1px solid rgb(255 255 255 / .8); border-radius: 22px; backdrop-filter: blur(10px); color: #4a2838; }
.public-page.public-template-blush .public-link-featured .public-link { background: var(--profile-accent); color: var(--profile-accent-ink); border: 0; }
.public-page.public-template-blush .public-content-testimonial { background: rgb(255 255 255 / .55); border-radius: 22px; font-family: LiterataQ, Georgia, serif; font-style: italic; }

/* ---- Noir (Pro): dark and focused -------------------------------------- */
.public-page.public-template-noir .public-header .public-cover-image { height: 320px; border-radius: 0; -webkit-mask-image: linear-gradient(180deg, #000 55%, transparent); mask-image: linear-gradient(180deg, #000 55%, transparent); }
.public-page.public-template-noir .public-header:has(.public-cover-image) .public-avatar { margin-top: -96px; box-shadow: 0 0 0 3px #0b0b13, 0 0 32px rgb(189 111 255 / .45); }
.public-page.public-template-noir .public-name { font-size: 2rem; letter-spacing: -.02em; }
.public-page.public-template-noir .public-link { background: #15131d; border: 1px solid rgb(238 231 242 / .12); border-radius: 14px; }
.public-page.public-template-noir .public-link-featured .public-link { background: #241a33; border-color: rgb(189 111 255 / .5); box-shadow: none; }
.public-page.public-template-noir .public-link-thumbnail { border-radius: 8px; }

/* ---- Shared: section tabs as pills ----------------------------------- */
.public-page .public-section-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.public-page .public-section-nav a { padding: 7px 14px; border-radius: 999px; border: 1px solid var(--profile-border); color: var(--profile-ink); font-size: .8125rem; font-weight: 600; text-decoration: none; background: color-mix(in srgb, var(--profile-paper) 70%, transparent); }

/* ---- Shared: featured link carries the accent ------------------------- */
.public-page:not([class*="public-template-"]) .public-link-featured .public-link { background: var(--profile-accent); color: var(--profile-accent-ink); border-color: transparent; }
.public-page.public-preset-canonical:not([class*="public-template-"]) .public-link-section .public-links:not(.public-bento-grid) { gap: 10px; }
/* Qoralo links are cards: a paper surface with a hairline, title first, room between them. */
.public-page.public-preset-canonical:not([class*="public-template-"]) .public-link-section .public-link-card:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) { border-bottom: 0; }
.public-page.public-preset-canonical:not([class*="public-template-"]) .public-link-section .public-link-card:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) .public-link { border: 1px solid var(--profile-border); border-radius: 12px; padding: 16px 56px 16px 16px; color: var(--profile-ink); background: var(--profile-paper); box-shadow: none; text-align: start; }
.public-page.public-preset-canonical:not([class*="public-template-"]).public-button-soft .public-link-section .public-link-card:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) .public-link { background: var(--profile-accent-soft); }
.public-page.public-preset-canonical:not([class*="public-template-"]).public-button-outline .public-link-section .public-link-card:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) .public-link { border-color: var(--profile-accent); background: transparent; }
.public-page.public-preset-canonical:not([class*="public-template-"]) .public-link-section .public-link-card.public-align-center:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) .public-link { justify-content: center; text-align: center; }
.public-page.public-preset-canonical:not([class*="public-template-"]) .public-link-section .public-link-card.public-align-right:not(.public-link-featured):not(.public-link-card-tile):not(.public-link-card-callout) .public-link { justify-content: flex-end; text-align: right; }
.public-page.public-preset-canonical:not([class*="public-template-"]).public-button-solid .public-link-featured .public-link { border-color: var(--profile-accent); color: var(--profile-accent-ink); background: var(--profile-accent); }
.public-page.public-preset-canonical:not([class*="public-template-"]).public-button-soft .public-link-featured .public-link { border-color: var(--profile-accent); color: var(--profile-ink); background: var(--profile-accent-soft); }
.public-page.public-preset-canonical:not([class*="public-template-"]).public-button-outline .public-link-featured .public-link { border: 1px solid var(--profile-accent); color: var(--profile-outline-ink); background: transparent; box-shadow: none; }

/* ---- Full-bleed hero covers on phones (Editorial, Poster, Noir) ------- */
@media (max-width: 640px) {
  .public-page:is(.public-template-editorial, .public-template-poster, .public-template-noir) .public-header:has(.public-cover-image) { margin-top: -144px; }
  .public-page:is(.public-template-editorial, .public-template-poster, .public-template-noir) .public-header .public-cover-image { width: 100vw; margin-left: calc(50% - 50vw); border-radius: 0; }
  .public-page.public-template-editorial .public-header .public-cover-image { height: 380px; }
  .public-page.public-template-poster .public-header .public-cover-image { height: 340px; }
  .public-page.public-template-noir .public-header .public-cover-image { height: 420px; }
}
.public-page.public-template-editorial .public-header .public-cover-image + .public-avatar { display: none; }

.public-page.public-template-editorial .public-header .public-identity { margin-top: 26px; }

/* Journal keeps quiet underlined tabs instead of pills. */
.public-page.public-template-journal .public-section-nav { justify-content: flex-start; gap: 22px; border-bottom: 1px solid rgb(63 51 56 / .2); padding-bottom: 10px; }
.public-page.public-template-journal .public-section-nav a { padding: 0 0 10px; margin-bottom: -11px; border: 0; border-radius: 0; background: none; font-family: LiterataQ, Georgia, serif; font-size: 1rem; font-weight: 500; }
.public-page.public-template-journal .public-section-nav a:first-child { border-bottom: 2px solid #3f3338; }

/* Per-link sharing stays quiet and clear on the filled featured row. */
.public-page.public-button-solid:not([class*="public-template-"]) .public-link-card:not(.public-link-featured) .public-link-share { color: var(--profile-muted); }
.public-page:not([class*="public-template-"]) .public-link-featured .public-link-share { color: var(--profile-accent-ink); opacity: .72; }

/* Travel Editorial */
@font-face { font-family: QoraloTravelEditorialText; src: url('/assets/home/launch/fonts/manrope.woff2') format('woff2'); font-display: swap; font-weight: 200 800; }
@font-face { font-family: QoraloTravelEditorialDisplay; src: url('/assets/fonts/looks/instrument-serif-latin-400-normal.woff2') format('woff2'); font-display: swap; font-weight: 400; }
@font-face { font-family: QoraloTravelEditorialDisplay; src: url('/assets/fonts/looks/instrument-serif-latin-400-italic.woff2') format('woff2'); font-display: swap; font-style: italic; font-weight: 400; }
@font-face { font-family: QoraloTravelEditorialMono; src: url('/assets/fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2'); font-display: swap; font-weight: 500; }
.public-page.public-template-travel-editorial[class] { --profile-canvas: #fff; --profile-ink: #292b28; --profile-text: #292b28; --profile-muted: #696d68; --profile-paper: #fff; --profile-avatar-fallback: #eff3f1; --profile-outline: rgb(41 43 40 / .12); --profile-border: #e5e7e3; --profile-follower-border: rgb(41 43 40 / .14); --profile-control-border: rgb(41 43 40 / .26); --profile-featured-border: #e5e7e3; --profile-link-hover: #f5f7f5; --profile-focus: #5d2945; --profile-accent: #5d2945; --profile-accent-soft: #eff3f1; --profile-accent-ink: #fff; --profile-soft-ink: #292b28; --profile-outline-ink: #5d2945; --profile-font: QoraloTravelEditorialText, sans-serif; padding-top: 64px; }
.public-page.public-template-travel-editorial[class] * { font-family: QoraloTravelEditorialText, sans-serif !important; }
.public-page.public-template-travel-editorial[class] :is(.public-name, .public-content-header, .public-content-product-heading h3, .public-empty-title) { font-family: QoraloTravelEditorialDisplay, Georgia, serif !important; font-weight: 400; }
.public-page.public-template-travel-editorial[class] :is(.public-slug, .public-folder-title) { font-family: QoraloTravelEditorialMono, monospace !important; }
.public-page.public-template-travel-editorial[class] .public-header .public-name { max-width: 100%; font-size: clamp(46px, 12vw, 64px); line-height: .98; letter-spacing: -.025em; overflow-wrap: anywhere; }
.public-page.public-template-travel-editorial .public-slug { color: var(--profile-muted); font-size: 12px; letter-spacing: .02em; }
.public-page.public-template-travel-editorial .public-cover-image { display: block; width: 100%; height: clamp(220px, 75vw, 366px); overflow: hidden; border-radius: 16px; }
.public-page.public-template-travel-editorial[class] .public-content-header { font-size: 2rem; line-height: 1.1; }
.public-page.public-template-travel-editorial[class] .public-link-card .public-link { display: flex; min-width: 0; min-height: 84px; align-items: center; justify-content: flex-start; gap: 14px; border: 0; border-bottom: 1px solid var(--profile-border); border-radius: 0; padding: 18px 56px 18px 0; color: var(--profile-ink); background: transparent; box-shadow: none; text-align: left; }
.public-page.public-template-travel-editorial .public-link::after { flex: 0 0 18px; color: var(--profile-accent); content: '↗'; font-size: 18px; }
.public-page.public-template-travel-editorial .public-link-copy { flex: 1 1 auto; min-width: 0; }
.public-page.public-template-travel-editorial .public-link-title { font-size: 1rem; font-weight: 600; overflow-wrap: anywhere; }
.public-page.public-template-travel-editorial .public-link-preview-meta { min-width: 0; color: var(--profile-muted); }
.public-page.public-template-travel-editorial .public-link-description { white-space: normal; }
.public-page.public-template-travel-editorial .public-link-action { display: none; }
.public-page.public-template-travel-editorial .public-content-product { border-color: var(--profile-border); border-radius: 16px; background: var(--profile-paper); }
.public-page.public-template-travel-editorial .public-content-product-media img { max-height: 340px; border-radius: 12px; object-fit: cover; }
.public-page.public-template-travel-editorial .public-content-product a { border-color: var(--profile-accent); border-radius: 8px; color: var(--profile-accent-ink); background: var(--profile-accent); }

/* Field Notes */
@font-face { font-family: QoraloFieldNotesDisplay; src: url('/assets/fonts/looks/archivo-black-latin-400-normal.woff2') format('woff2'); font-display: swap; font-weight: 400; }
@font-face { font-family: QoraloFieldNotesText; src: url('/assets/fonts/looks/space-grotesk-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 300 700; }
@font-face { font-family: QoraloFieldNotesMono; src: url('/assets/fonts/looks/space-mono-latin-400-normal.woff2') format('woff2'); font-display: swap; font-weight: 400; }
.public-page.public-template-field-notes[class] { --profile-canvas: #fff; --profile-ink: #171c19; --profile-text: #171c19; --profile-muted: #576057; --profile-paper: #fff; --profile-avatar-fallback: #d8e1ff; --profile-outline: rgb(23 28 25 / .16); --profile-border: #dce2df; --profile-follower-border: rgb(23 28 25 / .18); --profile-control-border: rgb(23 28 25 / .3); --profile-featured-border: #164df2; --profile-link-hover: #f2f5ff; --profile-focus: #164df2; --profile-accent: #164df2; --profile-accent-soft: #f2f5ff; --profile-accent-ink: #fff; --profile-soft-ink: #171c19; --profile-outline-ink: #164df2; --profile-font: QoraloFieldNotesText, sans-serif; padding-top: 0; }
.public-page.public-template-field-notes[class] * { font-family: QoraloFieldNotesText, sans-serif !important; }
.public-page.public-template-field-notes[class] :is(.public-name, .public-content-header, .public-content-product-heading h3, .public-empty-title) { font-family: QoraloFieldNotesDisplay, Impact, sans-serif !important; font-weight: 400; }
.public-page.public-template-field-notes[class] :is(.public-slug, .public-folder-title, .public-link-card .public-link::before, .public-link-domain) { font-family: QoraloFieldNotesMono, monospace !important; }
.public-page.public-template-field-notes[class] .public-header { display: grid; grid-template-columns: minmax(0, 1fr) 96px; gap: 16px; padding: 76px var(--profile-gutter) 32px; color: #fff; background: #164df2; text-align: left; }
.public-page.public-template-field-notes .public-header :is(.public-name, .public-slug, .public-bio) { color: #fff; }
.public-page.public-template-field-notes[class] .public-header .public-name { max-width: 100%; font-size: clamp(44px, 12vw, 72px); line-height: .94; letter-spacing: -.04em; overflow-wrap: anywhere; text-transform: uppercase; }
.public-page.public-template-field-notes .public-slug { font-size: 11px; letter-spacing: .05em; }
.public-page.public-template-field-notes[class] .public-content-header { margin-top: 30px; font-size: 2rem; line-height: 1.08; }
.public-page.public-template-field-notes[class] .public-content-product { width: calc(100% + 2 * var(--profile-gutter)); margin-inline: calc(-1 * var(--profile-gutter)); padding: 28px var(--profile-gutter); border: 0; border-radius: 0; color: #171c19; background: #e6f780; }
.public-page.public-template-field-notes .public-content-product :is(h3, p, .public-content-product-price) { color: #171c19; }
.public-page.public-template-field-notes .public-content-product-media img { max-height: 280px; border-radius: 4px; object-fit: cover; }
.public-page.public-template-field-notes .public-content-product a { border: 0; border-radius: 4px; color: #fff; background: #171c19; }
.public-page.public-template-field-notes .public-links { counter-reset: field-notes-link; }
.public-page.public-template-field-notes .public-links .public-link-card { counter-increment: field-notes-link; }
.public-page.public-template-field-notes[class] .public-link-card .public-link { display: flex; min-width: 0; min-height: 86px; align-items: center; justify-content: flex-start; gap: 12px; border: 0; border-bottom: 1px solid var(--profile-border); border-radius: 0; padding: 18px 56px 18px 0; color: var(--profile-ink); background: transparent; box-shadow: none; text-align: left; }
.public-page.public-template-field-notes .public-link::before { flex: 0 0 30px; color: #164df2; content: counter(field-notes-link, decimal-leading-zero); font-size: 11px; }
.public-page.public-template-field-notes .public-link::after { flex: 0 0 18px; color: #164df2; content: '↗'; font-size: 18px; }
.public-page.public-template-field-notes .public-link-copy { flex: 1 1 auto; min-width: 0; }
.public-page.public-template-field-notes .public-link-title { font-size: 1.2rem; font-weight: 650; overflow-wrap: anywhere; }
.public-page.public-template-field-notes .public-link-description { white-space: normal; }
.public-page.public-template-field-notes .public-link-action { display: none; }

/* Afterglow */
@font-face { font-family: QoraloAfterglowDisplay; src: url('/assets/home/launch/fonts/bricolage.woff2') format('woff2'); font-display: swap; font-weight: 200 800; }
@font-face { font-family: QoraloAfterglowText; src: url('/assets/fonts/looks/dm-sans-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 100 900; }
@font-face { font-family: QoraloAfterglowMono; src: url('/assets/fonts/looks/geist-mono-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 100 900; }
.public-page.public-template-afterglow[class] { --profile-canvas: #10191d; --profile-ink: #f4f6f7; --profile-text: #f4f6f7; --profile-muted: #aab7bc; --profile-paper: #1e2b30; --profile-avatar-fallback: #1e2b30; --profile-outline: rgb(244 246 247 / .16); --profile-border: #334249; --profile-follower-border: rgb(244 246 247 / .18); --profile-control-border: rgb(244 246 247 / .34); --profile-featured-border: #334249; --profile-link-hover: #26363c; --profile-focus: #f6c77a; --profile-accent: #f6c77a; --profile-accent-soft: #332f29; --profile-accent-ink: #10191d; --profile-soft-ink: #f4f6f7; --profile-outline-ink: #f4f6f7; --profile-font: QoraloAfterglowText, sans-serif; color-scheme: dark; padding-top: 72px; }
.public-page.public-template-afterglow[class] * { font-family: QoraloAfterglowText, sans-serif !important; }
.public-page.public-template-afterglow[class] :is(.public-name, .public-content-header, .public-content-product-heading h3, .public-empty-title) { font-family: QoraloAfterglowDisplay, sans-serif !important; font-weight: 600; }
.public-page.public-template-afterglow[class] :is(.public-slug, .public-folder-title, .public-link-domain) { font-family: QoraloAfterglowMono, monospace !important; }
.public-page.public-template-afterglow[class] .public-header .public-name { max-width: 100%; font-size: 24px; line-height: 1.15; letter-spacing: -.025em; overflow-wrap: anywhere; }
.public-page.public-template-afterglow .public-slug { color: var(--profile-muted); font-size: 11px; letter-spacing: .03em; }
.public-page.public-template-afterglow[class] .public-link-card .public-link { min-height: 82px; justify-content: flex-start; border: 1px solid var(--profile-border); border-radius: 16px; padding: 16px 56px 16px 16px; color: var(--profile-ink); background: var(--profile-paper); text-align: left; }
.public-page.public-template-afterglow .public-link:hover { color: var(--profile-ink); background: var(--profile-link-hover); }
.public-page.public-template-afterglow .public-link-thumbnail { border-radius: 50%; }
.public-page.public-template-afterglow .public-link-title { font-weight: 600; overflow-wrap: anywhere; }
.public-page.public-template-afterglow[class] .public-content-header { font-size: 2rem; line-height: 1.1; letter-spacing: -.04em; }
.public-page.public-template-afterglow .public-content-product { border-color: var(--profile-border); border-radius: 16px; background: var(--profile-paper); }
.public-page.public-template-afterglow .public-content-product-media img { max-height: 320px; border-radius: 12px; object-fit: cover; }
.public-page.public-template-afterglow .public-content-product a { border-color: var(--profile-accent); border-radius: 12px; color: var(--profile-accent-ink); background: var(--profile-accent); }

/* Postcards, the reusable English name for Cartoline */
@font-face { font-family: QoraloPostcardsDisplay; src: url('/assets/fonts/looks/fraunces-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 100 900; }
@font-face { font-family: QoraloPostcardsText; src: url('/assets/fonts/looks/funnel-sans-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 300 800; }
@font-face { font-family: QoraloPostcardsHand; src: url('/assets/home/launch/fonts/caveat.woff2') format('woff2'); font-display: swap; font-weight: 400 700; }
.public-page.public-template-cartoline[class] { --profile-canvas: #eee8f8; --profile-ink: #382749; --profile-text: #382749; --profile-muted: #71637f; --profile-paper: #fff; --profile-avatar-fallback: #e3d9f0; --profile-outline: rgb(56 39 73 / .16); --profile-border: #d8cde4; --profile-follower-border: rgb(56 39 73 / .18); --profile-control-border: rgb(56 39 73 / .3); --profile-featured-border: #d8cde4; --profile-link-hover: #f7f3fb; --profile-focus: #b93149; --profile-accent: #b93149; --profile-accent-soft: #f7e4e9; --profile-accent-ink: #fff; --profile-soft-ink: #382749; --profile-outline-ink: #b93149; --profile-font: QoraloPostcardsText, sans-serif; padding-top: 72px; }
.public-page.public-template-cartoline[class] * { font-family: QoraloPostcardsText, sans-serif !important; }
.public-page.public-template-cartoline[class] :is(.public-name, .public-content-header, .public-link-title, .public-content-product-heading h3, .public-empty-title) { font-family: QoraloPostcardsDisplay, Georgia, serif !important; font-weight: 500; }
.public-page.public-template-cartoline[class] :is(.public-slug, .public-content-media figcaption) { font-family: QoraloPostcardsHand, cursive !important; }
.public-page.public-template-cartoline[class] .public-header .public-name { max-width: 100%; font-size: clamp(38px, 10vw, 50px); line-height: 1.05; overflow-wrap: anywhere; }
.public-page.public-template-cartoline .public-bio { max-width: 34rem; }
.public-page.public-template-cartoline[class] .public-link-card .public-link { display: flex; min-width: 0; min-height: 84px; align-items: center; justify-content: flex-start; gap: 12px; border: 0; border-bottom: 1px solid var(--profile-border); border-radius: 0; padding: 18px 56px 18px 0; color: var(--profile-ink); background: transparent; box-shadow: none; text-align: left; }
.public-page.public-template-cartoline .public-link::after { flex: 0 0 18px; color: var(--profile-accent); content: '↗'; font-size: 18px; }
.public-page.public-template-cartoline .public-link-copy { flex: 1 1 auto; min-width: 0; }
.public-page.public-template-cartoline .public-link-title { font-size: 1.4rem; font-weight: 500; overflow-wrap: anywhere; }
.public-page.public-template-cartoline .public-link-description { white-space: normal; }
.public-page.public-template-cartoline .public-link-action { display: none; }
.public-page.public-template-cartoline .public-content-media { width: min(100%, 390px); max-width: calc(100% - 16px); margin: 18px auto 28px; border: 1px solid #fff; border-radius: 2px; padding: 10px 10px 28px; background: #fff; box-shadow: 0 10px 28px rgb(56 39 73 / .14); }
.public-page.public-template-cartoline .public-content-media img { aspect-ratio: 4 / 5; border-radius: 0; object-fit: cover; }
.public-page.public-template-cartoline .public-content-media:nth-of-type(odd) { transform: rotate(-1.5deg); }
.public-page.public-template-cartoline .public-content-media:nth-of-type(even) { transform: rotate(1.3deg); }
.public-page.public-template-cartoline .public-content-media figcaption { margin-top: 10px; color: var(--profile-muted); font-size: 18px; line-height: 1.15; text-align: center; }
.public-page.public-template-cartoline[class] .public-content-header { font-size: 2rem; line-height: 1.15; }
.public-page.public-template-cartoline .public-content-product { border-color: var(--profile-border); border-radius: 12px; background: var(--profile-paper); }
.public-page.public-template-cartoline .public-content-product-media img { border-radius: 6px; }
.public-page.public-template-cartoline .public-content-product a { color: var(--profile-accent-ink); background: var(--profile-accent); border-color: var(--profile-accent); }

/* Green Door */
@font-face { font-family: QoraloGreenDoorDisplay; src: url('/assets/fonts/looks/cormorant-garamond-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 300 700; }
@font-face { font-family: QoraloGreenDoorDisplay; src: url('/assets/fonts/looks/cormorant-garamond-latin-wght-italic.woff2') format('woff2'); font-display: swap; font-style: italic; font-weight: 300 700; }
@font-face { font-family: QoraloGreenDoorText; src: url('/assets/fonts/looks/geist-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 100 900; }
@font-face { font-family: QoraloGreenDoorMono; src: url('/assets/fonts/looks/fragment-mono-latin-400-normal.woff2') format('woff2'); font-display: swap; font-weight: 400; }
.public-page.public-template-green-door[class] { --profile-canvas: #fff; --profile-ink: #1d4439; --profile-text: #1d4439; --profile-muted: #587268; --profile-paper: #fff; --profile-avatar-fallback: #e5f1eb; --profile-outline: rgb(29 68 57 / .16); --profile-border: #cdded5; --profile-follower-border: rgb(29 68 57 / .18); --profile-control-border: rgb(29 68 57 / .3); --profile-featured-border: #cdded5; --profile-link-hover: #f3f8f5; --profile-focus: #174c3f; --profile-accent: #174c3f; --profile-accent-soft: #e5f1eb; --profile-accent-ink: #fff; --profile-soft-ink: #1d4439; --profile-outline-ink: #174c3f; --profile-font: QoraloGreenDoorText, sans-serif; padding-top: 0; }
.public-page.public-template-green-door[class] * { font-family: QoraloGreenDoorText, sans-serif !important; }
.public-page.public-template-green-door[class] :is(.public-name, .public-content-header, .public-link-title, .public-content-product-heading h3, .public-empty-title) { font-family: QoraloGreenDoorDisplay, Georgia, serif !important; font-weight: 500; }
.public-page.public-template-green-door[class] :is(.public-slug, .public-folder-title, .public-link-domain) { font-family: QoraloGreenDoorMono, monospace !important; }
.public-page.public-template-green-door[class] .public-header { display: flex; flex-direction: column; padding: 76px var(--profile-gutter) 0; color: #fff; background: #174c3f; }
.public-page.public-template-green-door .public-header :is(.public-name, .public-slug, .public-bio) { color: #fff; }
.public-page.public-template-green-door[class] .public-header img.public-avatar { order: 1; width: min(66vw, 300px); max-width: 100%; height: min(72vw, 320px); margin: 28px auto 0; border-radius: 50% 50% 0 0; object-fit: cover; }
.public-page.public-template-green-door[class] .public-header .public-name { max-width: 100%; font-size: clamp(44px, 12vw, 64px); line-height: .98; font-style: italic; overflow-wrap: anywhere; }
.public-page.public-template-green-door .public-slug { font-size: 11px; letter-spacing: .05em; }
.public-page.public-template-green-door[class] .public-content-header { font-size: 2.3rem; line-height: 1.12; }
.public-page.public-template-green-door .public-content-product { border: 0; border-radius: 0; background: transparent; }
.public-page.public-template-green-door .public-content-product-heading h3 { font-size: clamp(1.7rem, 7vw, 2.65rem); font-weight: 500; }
.public-page.public-template-green-door .public-content-product a { border-color: var(--profile-accent); border-radius: 999px; color: var(--profile-accent-ink); background: var(--profile-accent); }
.public-page.public-template-green-door[class] .public-link-card .public-link { display: flex; min-width: 0; min-height: 92px; align-items: center; justify-content: flex-start; gap: 12px; border: 0; border-bottom: 1px solid var(--profile-border); border-radius: 0; padding: 18px 56px 18px 0; color: var(--profile-ink); background: transparent; box-shadow: none; text-align: left; }
.public-page.public-template-green-door .public-link::after { flex: 0 0 18px; color: var(--profile-accent); content: '↗'; font-size: 18px; }
.public-page.public-template-green-door .public-link-copy { flex: 1 1 auto; min-width: 0; }
.public-page.public-template-green-door .public-link-title { font-size: 1.6rem; font-weight: 500; overflow-wrap: anywhere; }
.public-page.public-template-green-door .public-link-description { white-space: normal; }
.public-page.public-template-green-door .public-link-action { display: none; }

/* Selects */
@font-face { font-family: QoraloSelectsDisplay; src: url('/assets/fonts/looks/syne-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 400 800; }
@font-face { font-family: QoraloSelectsText; src: url('/assets/fonts/looks/hanken-grotesk-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 100 900; }
@font-face { font-family: QoraloSelectsMono; src: url('/assets/fonts/looks/azeret-mono-latin-wght-normal.woff2') format('woff2'); font-display: swap; font-weight: 100 900; }
.public-page.public-template-selects[class] { --profile-canvas: #f7f8fa; --profile-ink: #202326; --profile-text: #202326; --profile-muted: #666c75; --profile-paper: #fff; --profile-avatar-fallback: #e0e8fc; --profile-outline: rgb(32 35 38 / .14); --profile-border: #dfe2e7; --profile-follower-border: rgb(32 35 38 / .16); --profile-control-border: rgb(32 35 38 / .28); --profile-featured-border: #dfe2e7; --profile-link-hover: #f1f4fb; --profile-focus: #202326; --profile-accent: #ff9870; --profile-accent-soft: #e0e8fc; --profile-accent-ink: #202326; --profile-soft-ink: #202326; --profile-outline-ink: #202326; --profile-font: QoraloSelectsText, sans-serif; padding-top: 72px; }
.public-page.public-template-selects[class] * { font-family: QoraloSelectsText, sans-serif !important; }
.public-page.public-template-selects[class] :is(.public-name, .public-content-header, .public-content-product-heading h3, .public-empty-title) { font-family: QoraloSelectsDisplay, sans-serif !important; font-weight: 800; }
.public-page.public-template-selects[class] :is(.public-slug, .public-folder-title, .public-link-domain) { font-family: QoraloSelectsMono, monospace !important; }
.public-page.public-template-selects[class] .public-header .public-name { max-width: 100%; font-size: 24px; line-height: 1.15; letter-spacing: -.035em; overflow-wrap: anywhere; }
.public-page.public-template-selects .public-slug { color: var(--profile-muted); font-size: 11px; }
.public-page.public-template-selects[class] .public-link-card .public-link { min-height: 82px; justify-content: flex-start; border: 1px solid var(--profile-border); border-radius: 8px; padding: 16px 56px 16px 16px; color: var(--profile-ink); background: var(--profile-paper); text-align: left; }
.public-page.public-template-selects .public-link:hover { color: var(--profile-ink); background: var(--profile-link-hover); }
.public-page.public-template-selects .public-link-thumbnail { border-radius: 50%; }
.public-page.public-template-selects .public-link-title { font-weight: 650; overflow-wrap: anywhere; }
.public-page.public-template-selects[class] .public-content-header { font-size: clamp(36px, 10vw, 52px); font-weight: 800; line-height: 1; letter-spacing: -.04em; }
.public-page.public-template-selects .public-content-product { padding: 24px; border: 0; border-radius: 8px; background: var(--profile-accent); }
.public-page.public-template-selects .public-content-product-media { width: min(64vw, 234px); aspect-ratio: 1; margin-inline: auto; overflow: hidden; border-radius: 50%; }
.public-page.public-template-selects .public-content-product-media img { width: 100%; height: 100%; max-height: none; border-radius: 50%; object-fit: cover; }
.public-page.public-template-selects[class] .public-content-product-heading h3 { font-size: clamp(24px, 6.5vw, 48px); font-weight: 800; line-height: 1; text-transform: uppercase; }
.public-page.public-template-selects .public-content-product a { color: var(--profile-paper); background: var(--profile-ink); border-color: var(--profile-ink); }

/* Only these six looks own saved palette, button and font choices. The extra
   class specificity wins the explicit profile axes without changing old looks. */
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] { --profile-gutter: 26px; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] :is(.public-publication, .public-featured-section, .public-link-search, .public-audience-capture) { width: min(calc(100% - 2 * var(--profile-gutter)), 524px); max-width: calc(100% - 2 * var(--profile-gutter)); margin-inline: auto; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] :is(.public-social-chips .public-social-link, .public-social-more summary, .public-section-nav a) { border-color: var(--profile-border); color: var(--profile-text); background: var(--profile-paper); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] :is(.public-link-search input, .public-audience-capture input:not([type='checkbox'])) { border-color: var(--profile-border); color: var(--profile-ink); background: var(--profile-paper); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-link-thumbnail { width: 48px; height: 48px; flex-basis: 48px; color: var(--profile-ink); background: var(--profile-avatar-fallback); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-avatar-fallback { color: var(--profile-ink); background: var(--profile-avatar-fallback) !important; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-link-preview-meta { color: var(--profile-muted); opacity: 1; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-link-card .public-link:hover { color: var(--profile-ink); background: var(--profile-link-hover); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-content-divider { border-color: var(--profile-border); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-footer :is(a, button) { color: var(--profile-muted); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] :is(.public-empty-cta, .public-footer .public-footer-cta, .public-audience-capture button) { border: 1px solid var(--profile-accent); color: var(--profile-accent-ink); background: var(--profile-accent); box-shadow: none; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] :is(.public-page-home, .public-page-share) { top: 16px; background: transparent; box-shadow: none; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-cartoline, .public-template-green-door)[class] .public-links { gap: 0; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-links { gap: 12px; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header:not(:has(.public-cover-image)) { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 18px 14px; padding: 0 var(--profile-gutter) 24px; text-align: left; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header:not(:has(.public-cover-image)) .public-identity { display: contents; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header:not(:has(.public-cover-image)) .public-avatar { grid-column: 1; grid-row: 1; width: 52px; height: 52px; margin: 0; font-size: 24px; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header:not(:has(.public-cover-image)) .public-name-row { grid-column: 2; grid-row: 1; align-self: center; justify-items: start; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header:not(:has(.public-cover-image)) .public-bio { grid-column: 1 / -1; max-width: 100%; margin: 0; text-align: left; }
.public-page.public-template-travel-editorial[class] .public-header { padding-bottom: 24px; }
.public-page.public-template-travel-editorial[class] .public-header:has(.public-cover-image) { position: relative; padding: 0; }
.public-page.public-template-travel-editorial[class] .public-header:has(.public-cover-image) .public-cover-image { height: clamp(300px, 95vw, 440px); border-radius: 0; }
.public-page.public-template-travel-editorial[class] .public-header:has(.public-cover-image) .public-identity { position: absolute; inset: auto var(--profile-gutter) 28px; }
.public-page.public-template-travel-editorial[class] .public-header:has(.public-cover-image) .public-avatar { display: none; }
.public-page.public-template-travel-editorial[class] .public-header:has(.public-cover-image) :is(.public-name, .public-slug, .public-bio) { color: #fff; text-shadow: 0 1px 10px rgb(0 0 0 / .65); text-align: left; }
.public-page.public-template-travel-editorial[class] .public-header:has(.public-cover-image) .public-name-row { justify-items: start; }
.public-page.public-template-travel-editorial[class]:has(.public-cover-image) { padding-top: 0; }
.public-page.public-template-field-notes[class] .public-header .public-identity { grid-column: 1; grid-row: 1; }
.public-page.public-template-field-notes[class] .public-header .public-avatar { grid-column: 2; grid-row: 1; align-self: end; width: 96px; height: 96px; margin: 0; }
.public-page.public-template-field-notes[class] .public-header .public-name-row { justify-items: start; }
.public-page.public-template-field-notes[class] .public-header .public-bio { margin-top: 20px; text-align: left; }
.public-page.public-template-cartoline[class] .public-header { display: flex; flex-direction: column; padding-bottom: 24px; }
.public-page.public-template-cartoline[class] .public-header img.public-avatar { order: 1; box-sizing: border-box; width: min(66vw, 260px); height: min(72vw, 285px); margin: 28px auto 12px; border: 8px solid #fff; border-bottom-width: 28px; border-radius: 0; outline: 0; object-fit: cover; box-shadow: 0 10px 28px rgb(56 39 73 / .12); transform: rotate(-3deg); }

/* Phase 2: optional block presentations used by the six named looks. */
.public-page.public-template-travel-editorial[class] :is(.public-masthead-kicker,.public-content-header-kicker,.public-link-kicker,.public-content-product-kicker) { font-family: QoraloTravelEditorialMono, monospace !important; }
.public-page.public-template-field-notes[class] :is(.public-masthead-kicker,.public-content-header-kicker,.public-link-kicker,.public-content-product-kicker) { font-family: QoraloFieldNotesMono, monospace !important; }
.public-page.public-template-afterglow[class] :is(.public-masthead-kicker,.public-content-header-kicker,.public-link-kicker,.public-content-product-kicker) { font-family: QoraloAfterglowMono, monospace !important; }
.public-page.public-template-cartoline[class] :is(.public-masthead-kicker,.public-content-header-kicker,.public-link-kicker,.public-content-product-kicker) { font-family: ui-monospace, monospace !important; }
.public-page.public-template-green-door[class] :is(.public-masthead-kicker,.public-content-header-kicker,.public-link-kicker,.public-content-product-kicker) { font-family: QoraloGreenDoorMono, monospace !important; }
.public-page.public-template-selects[class] :is(.public-masthead-kicker,.public-content-header-kicker,.public-link-kicker,.public-content-product-kicker) { font-family: QoraloSelectsMono, monospace !important; }
.public-page.public-template-field-notes .public-publication { counter-reset: field-notes-link; }
.public-page.public-template-field-notes .public-links { counter-reset: none; }
.public-page.public-template-field-notes .public-links .public-link-card:not(.public-link-card-row) { counter-increment: none; }
.public-page.public-template-field-notes .public-links .public-link-card-row { counter-increment: field-notes-link; }
.public-page.public-template-field-notes .public-link-card-row .public-link::before { content: counter(field-notes-link, decimal-leading-zero); }
.public-page.public-template-field-notes .public-link-card:not(.public-link-card-row) .public-link::before,
.public-page.public-template-field-notes .public-link-card:not(.public-link-card-row) .public-link::after { content: none; }

/* Travel cover and full-width featured product section band. */
.public-page.public-template-travel-editorial .public-header:has(.public-cover-photo) { position: relative; overflow: hidden; min-height: 360px; }
.public-page.public-template-travel-editorial .public-header:has(.public-cover-photo)::after { position: absolute; z-index: 0; inset: 35% 0 0; content: ''; background: linear-gradient(180deg, transparent, rgb(0 0 0 / .58)); pointer-events: none; }
.public-page.public-template-travel-editorial .public-header:has(.public-cover-photo) .public-identity { z-index: 1; }
.public-page.public-template-travel-editorial .public-header:has(.public-cover-photo) .public-masthead-kicker { color: rgb(255 255 255 / .82); }
.public-page.public-template-travel-editorial .public-content-product-featured { border: 1px solid var(--profile-border); border-radius: 16px; background: var(--profile-paper); }
.public-page.public-template-travel-editorial .public-content-product-cta { border-color: var(--profile-accent); border-radius: 8px; color: var(--profile-accent-ink); background: var(--profile-accent); }
.public-page.public-template-travel-editorial .public-link-card-callout { border: 0; border-radius: 12px; color: var(--profile-ink); background: #eff3f1; }
.public-page.public-template-travel-editorial .public-link-card-callout :is(.public-link-kicker,.public-link-subtitle) { color: var(--profile-muted); }
.public-page.public-template-travel-editorial .public-link-callout-cta { border-color: var(--profile-border); }

/* Field Notes feature band, numbered rows, and dark callout. */
.public-page.public-template-field-notes .public-content-product-featured { border: 0; border-radius: 0; background: transparent; }
.public-page.public-template-field-notes .public-content-product-featured-heading { background: linear-gradient(180deg, transparent, rgb(23 28 25 / .76)); }
.public-page.public-template-field-notes .public-content-product-cta { border: 0; border-radius: 4px; color: #fff; background: #171c19; }
.public-page.public-template-field-notes .public-link-card-callout { border: 0; border-radius: 4px; color: #fff; background: #171c19; }
.public-page.public-template-field-notes .public-link-card-callout .public-link-subtitle { color: #d8e1ff; }
.public-page.public-template-field-notes .public-link-callout-cta { border-color: rgb(255 255 255 / .45); }
.public-page.public-template-field-notes .public-header .public-masthead-kicker { color: rgb(255 255 255 / .82); }
.public-page.public-template-field-notes[class] article.public-content-product-featured { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); padding: 32px max(var(--profile-gutter), calc((100vw - 524px) / 2)); background: #e6f780; }
.public-page.public-template-field-notes .public-content-product-featured-media { min-height: 0; overflow: visible; background: transparent; align-items: start; }
.public-page.public-template-field-notes .public-content-product-featured-media .public-content-product-media { position: relative; inset: auto; order: 2; }
.public-page.public-template-field-notes[class] .public-content-product-featured-media img { aspect-ratio: 3 / 1; height: auto; border-radius: 4px; }
.public-page.public-template-field-notes .public-content-product-featured-heading { padding: 0 0 24px; background: transparent; color: #171c19; }
.public-page.public-template-field-notes .public-content-product-featured-heading .public-content-product-kicker { color: #576057; }
.public-page.public-template-field-notes .public-content-product-featured-heading h3 { color: #171c19; font-size: clamp(32px, 8.5vw, 48px); }
.public-page.public-template-field-notes .public-content-product-featured-copy { padding: 18px 0 0; gap: 12px; }

/* Afterglow photographic hero and two destination tiles. */
.public-page.public-template-afterglow .public-afterglow-hero { overflow: hidden; border-radius: 18px; background: #1e2b30; }
.public-page.public-template-afterglow .public-afterglow-hero .public-header { padding: 22px 22px 8px; text-align: left; }
.public-page.public-template-afterglow .public-afterglow-hero .public-header:not(:has(.public-cover-image)) { grid-template-columns: 52px minmax(0, 1fr); }
.public-page.public-template-afterglow .public-afterglow-hero .public-header .public-identity { display: contents; }
.public-page:is(.public-template-afterglow,.public-template-selects)[class] .public-header:not(:has(.public-cover-image)) .public-identity:has(.public-masthead-kicker) { display: block; grid-column: 2; grid-row: 1; }
.public-page.public-template-afterglow .public-afterglow-hero .public-header .public-name-row { justify-items: start; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-afterglow-hero { margin: 0; border: 0; border-radius: 0; background: transparent; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-featured-media { min-height: 310px; background: #1e2b30; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-featured-copy { padding-top: 0; }
.public-page.public-template-afterglow .public-content-product-cta { border-color: var(--profile-accent); border-radius: 10px; color: var(--profile-accent-ink); background: var(--profile-accent); }
.public-page.public-template-afterglow .public-bento-grid .public-link-card-tile:nth-child(2) { background: #26363c; }
.public-page.public-template-afterglow .public-bento-grid .public-link-card-tile:nth-child(2) .public-link-tile-copy { color: var(--profile-ink); background: linear-gradient(180deg, transparent, rgb(16 25 29 / .7)); }
.public-page.public-template-afterglow .public-link-card-callout { border: 0; border-top: 1px solid #334249; border-radius: 0; background: transparent; }

/* Postcards, Green Door, and Selects featured surfaces. */
.public-page.public-template-cartoline .public-content-product-featured { border-color: #d8cde4; border-radius: 12px; background: #fff; }
.public-page.public-template-cartoline .public-content-product-featured-heading h3 { font-size: clamp(25px, 7vw, 38px); }
.public-page.public-template-cartoline .public-content-product-cta { border-color: var(--profile-accent); border-radius: 8px; color: #fff; background: var(--profile-accent); }
.public-page.public-template-cartoline .public-link-card-callout { border: 0; border-radius: 12px; color: #fff; background: #483454; }
.public-page.public-template-cartoline .public-link-card-callout .public-link-subtitle { color: rgb(255 255 255 / .84); }
.public-page.public-template-cartoline .public-link-callout-cta { border-color: rgb(255 255 255 / .6); }
.public-page.public-template-green-door .public-content-product-featured { border: 0; border-radius: 0; background: transparent; text-align: center; }
.public-page.public-template-green-door .public-content-product-featured-heading { text-align: left; }
.public-page.public-template-green-door .public-content-product-featured-copy { text-align: center; }
.public-page.public-template-green-door .public-content-product-cta { border-color: var(--profile-accent); border-radius: 999px; color: #fff; background: var(--profile-accent); }
.public-page.public-template-green-door .public-link-card-callout { border-color: #cdded5; border-radius: 16px; background: #e5f1eb; }
.public-page.public-template-green-door .public-link-callout-cta { border-color: var(--profile-accent); color: #fff; background: var(--profile-accent); }
.public-page.public-template-green-door .public-header .public-masthead-kicker { color: rgb(255 255 255 / .82); }
.public-page.public-template-selects .public-content-product-featured { border: 0; border-radius: 18px; color: #262522; background: transparent; }
.public-page.public-template-selects .public-content-product-featured-heading { padding: 14px 18px; background: transparent; color: #262522; }
.public-page.public-template-selects .public-content-product-featured-heading h3 { color: #262522; }
.public-page.public-template-selects .public-content-product-featured-heading .public-content-product-kicker { color: #51423c; }
.public-page.public-template-selects .public-content-product-featured-media { min-height: 220px; border-radius: 18px; background: #ff9870; }
.public-page.public-template-selects .public-content-product-featured-media:has(img) { grid-template-columns: 1fr; }
.public-page.public-template-selects .public-content-product-featured-media:has(img) .public-content-product-media { position: relative; inset: auto; width: min(70vw, 300px); aspect-ratio: 1; height: auto; margin: 24px auto 0; overflow: hidden; border-radius: 50%; }
.public-page.public-template-selects .public-content-product-featured-media:has(img) .public-content-product-media img { border-radius: 50%; }
.public-page.public-template-selects .public-content-product-cta { border: 0; border-radius: 10px; color: #fff; background: #262522; }
.public-page.public-template-selects .public-link-card-callout { border: 0; border-radius: 16px; background: #e0e8fc; }
.public-page.public-template-selects .public-bento-grid-selects .public-link-card-tile:first-child:not(.public-link-card-text-tile) { grid-row: span 2; min-height: 492px; }

.public-page.public-template-cartoline[class] .public-header .public-slug { font-size: 20px; line-height: 1.2; color: var(--profile-accent); }

/* Optional presentations override the earlier row and standard product styles. */
.public-page.public-template-travel-editorial[class] :is(.public-content-product-featured-heading h3,.public-link-card-callout .public-link-title) { font-family: QoraloTravelEditorialDisplay, Georgia, serif !important; font-weight: 400; }
.public-page.public-template-field-notes[class] :is(.public-content-product-featured-heading h3,.public-link-card-callout .public-link-title) { font-family: QoraloFieldNotesDisplay, Impact, sans-serif !important; font-weight: 400; }
.public-page.public-template-afterglow[class] :is(.public-content-product-featured-heading h3,.public-link-card-callout .public-link-title) { font-family: QoraloAfterglowDisplay, sans-serif !important; font-weight: 500; }
.public-page.public-template-cartoline[class] .public-content-product-featured-heading h3 { font-family: QoraloPostcardsDisplay, Georgia, serif !important; font-weight: 500; }
.public-page.public-template-green-door[class] .public-content-product-featured-heading h3 { font-family: QoraloGreenDoorDisplay, Georgia, serif !important; font-weight: 500; }
.public-page.public-template-selects[class] .public-content-product-featured-heading h3 { font-family: QoraloSelectsDisplay, sans-serif !important; font-weight: 800; font-size: clamp(32px, 8vw, 48px); line-height: 1.05; text-transform: uppercase; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-cartoline, .public-template-green-door)[class] .public-link-card-text-tile { padding: 8px 0; border: 0; border-bottom: 1px solid var(--profile-border); border-radius: 0; background: transparent; }
.public-page.public-template-field-notes .public-link-card-text-tile .public-link-tile-copy { grid-template-columns: 24px minmax(0, 1fr) auto; }
.public-page.public-template-field-notes .public-link-card-text-tile .public-link-kicker { grid-column: 1; grid-row: 1 / span 3; color: #164df2; }
.public-page.public-template-field-notes .public-link-card-text-tile :is(.public-link-title,.public-link-subtitle) { grid-column: 2; }
.public-page.public-template-field-notes .public-link-card-text-tile .public-link-tile-action { grid-column: 3; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-content-product-cta { min-height: 56px; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-link-card-callout { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 26px; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-link-card-callout .public-link-callout-cta { justify-self: stretch; justify-content: space-between; border-radius: 6px; text-align: start; }
.public-page:is(.public-template-afterglow, .public-template-cartoline, .public-template-green-door)[class] .public-link-card-callout .public-link-title { font-size: clamp(30px, 8vw, 40px); }
.public-page.public-template-travel-editorial .public-content-product-featured-heading h3 { font-size: clamp(32px, 8vw, 42px); }
.public-page.public-template-cartoline[class] article.public-content-product-featured { grid-template-columns: minmax(0, 1fr); gap: 14px 20px; padding: 26px; }
.public-page.public-template-cartoline[class] article.public-content-product-featured:has(img) { grid-template-columns: 96px minmax(0, 1fr); }
.public-page.public-template-cartoline .public-content-product-featured-media { display: contents; }
.public-page.public-template-cartoline .public-content-product-featured-media .public-content-product-media { position: relative; inset: auto; height: 140px; }
.public-page.public-template-cartoline .public-content-product-featured-media .public-content-product-media { grid-column: 1; grid-row: 1 / span 2; align-self: start; }
.public-page.public-template-cartoline .public-content-product-featured-heading { grid-column: -2; }
.public-page.public-template-cartoline .public-content-product-featured-copy { display: contents; }
.public-page.public-template-cartoline .public-content-product-featured-copy p { grid-column: -2; margin: 0; }
.public-page.public-template-cartoline .public-content-product-cta { grid-column: 1 / -1; }
.public-page.public-template-cartoline .public-content-product-featured-heading { padding: 0 0 8px; background: transparent; color: var(--profile-ink); }
.public-page.public-template-cartoline .public-content-product-featured-heading :is(h3,.public-content-product-kicker) { color: var(--profile-ink); }
.public-page.public-template-green-door .public-content-product-featured-heading { padding: 24px 0 8px; background: transparent; color: var(--profile-ink); text-align: center; }
.public-page.public-template-green-door .public-content-product-featured-heading :is(h3,.public-content-product-kicker) { color: var(--profile-ink); }
.public-page.public-template-green-door .public-content-product-featured-media { min-height: 0; background: transparent; }
.public-page.public-template-green-door .public-content-product-featured-media .public-content-product-media { position: relative; inset: auto; height: 180px; }
.public-page.public-template-green-door .public-link-card-callout { border: 0; border-radius: 0; text-align: center; }
.public-page.public-template-green-door[class] .public-link-card-callout .public-link-callout-cta { justify-content: center; border: 0; color: var(--profile-ink); background: transparent; }
.public-page.public-template-selects .public-content-product-featured-copy { padding: 20px 0 24px; }
.public-page.public-template-afterglow .public-afterglow-hero { position: relative; }
.public-page.public-template-afterglow .public-afterglow-hero::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgb(16 25 29 / .3), transparent 25%, #10191d 75%); content: ''; pointer-events: none; }
.public-page.public-template-afterglow .public-afterglow-hero .public-header { position: relative; z-index: 2; background: transparent; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-featured-media { position: static; min-height: 380px; align-items: end; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-media { position: absolute; z-index: 0; inset: 0; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-featured-heading { z-index: 2; padding: 0 26px 16px; background: transparent; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-featured-heading h3 { font-size: clamp(40px, 10vw, 58px); font-weight: 500; }
.public-page.public-template-afterglow .public-afterglow-hero .public-content-product-featured-copy { position: relative; z-index: 2; padding: 0 26px 26px; }
.public-page.public-template-travel-editorial .public-link-card-callout .public-link-title { font-size: clamp(28px, 7vw, 36px); }
.public-page.public-template-green-door .public-content-product-featured-heading h3 { font-size: clamp(36px, 9vw, 48px); }
.public-page.public-template-field-notes[class] .public-link-card-callout { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); padding: 32px max(var(--profile-gutter), calc((100vw - 524px) / 2)); border-radius: 0; }
.public-page.public-template-field-notes .public-link-card-callout .public-link-title { color: #e6f780; font-size: clamp(28px, 7vw, 38px); }
.public-page:is(.public-template-field-notes, .public-template-cartoline)[class] .public-link-card-callout .public-link-kicker { color: rgb(255 255 255 / .7); }
.public-page.public-template-travel-editorial .public-travel-intro { padding: 26px var(--profile-gutter) 0; }
.public-page.public-template-travel-editorial .public-travel-intro .public-bio { max-width: 524px; margin: 0 auto; text-align: start; }
.public-page.public-template-travel-editorial .public-link-card-text-tile .public-link-title { font-size: 18px; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-content-product-cta { font-weight: 650; }

.public-page.public-template-field-notes .public-link-card-numbered .public-link::before { content: none; }
.public-page.public-template-selects .public-content-gallery ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.public-page.public-template-selects .public-gallery-carousel li { flex-basis: calc((100% - 10px) / 2); }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects)[class] .public-avatar-wordmark { width: min(100%, 240px); height: 88px; border-radius: 0; outline: 0; background: transparent; object-fit: contain; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header.public-identity-wordmark:not(:has(.public-cover-image)) { grid-template-columns: minmax(0, 1fr); text-align: center; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header.public-identity-wordmark:not(:has(.public-cover-image)) .public-avatar-wordmark { grid-column: 1; grid-row: 1; width: min(100%, 240px); height: 88px; margin: 0 auto 13px; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header.public-identity-wordmark:not(:has(.public-cover-image)) .public-identity { display: block; grid-column: 1; grid-row: 2; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header.public-identity-display-name:not(:has(.public-cover-image)) { display: block; text-align: center; }
.public-page:is(.public-template-afterglow, .public-template-selects)[class] .public-header.public-identity-display-name:not(:has(.public-cover-image)) .public-identity { display: block; }
.public-page:is(.public-template-travel-editorial, .public-template-field-notes, .public-template-afterglow, .public-template-cartoline, .public-template-green-door, .public-template-selects).public-identity-display-name[class] .public-header .public-name { max-width: min(100%, 14ch); font-size: clamp(40px, 10vw, 76px); font-weight: 700; line-height: .98; letter-spacing: -.05em; text-wrap: balance; }

.public-page.public-template-travel-editorial .public-content-event-day > h3 { font-family: Georgia, 'Times New Roman', serif; font-size: 18px; letter-spacing: 0; text-transform: none; }
.public-page.public-template-travel-editorial .public-content-price-list li { padding-block: 15px; }
.public-page.public-template-field-notes .public-content-event { border-bottom-style: dashed; }
.public-page.public-template-field-notes .public-content-event-day > h3 { color: var(--profile-accent); }
.public-page.public-template-afterglow .public-content-events,
.public-page.public-template-afterglow .public-content-price-list { border-color: rgb(255 255 255 / .2); background: rgb(255 255 255 / .06); }
.public-page.public-template-afterglow .public-content-product-choices a.is-default { background: rgb(255 255 255 / .08); }
.public-page.public-template-cartoline .public-content-event,
.public-page.public-template-cartoline .public-content-price-list li { border-bottom-style: dashed; }
.public-page.public-template-cartoline .public-content-product-choices a { border-radius: 3px; }
.public-page.public-template-green-door .public-content-event-day > h3,
.public-page.public-template-green-door .public-content-price-list { text-align: center; }
.public-page.public-template-green-door .public-content-product-choices a { border-radius: 2px; }
.public-page.public-template-selects .public-content-event,
.public-page.public-template-selects .public-content-price-list li { padding-block: 15px; }
.public-page.public-template-selects .public-content-event-day > h3 { font-family: Georgia, 'Times New Roman', serif; font-size: 17px; letter-spacing: 0; text-transform: none; }
