/*
Theme Name: Zora Artist
Theme URI: https://example.com/
Author: OpenAI for Zora Janska
Description: A minimal artist portfolio with a photographic hero, image logo, project carousel, and newsletter area.
Version: 3.28.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: zora-artist
*/

:root{--ink:#161616;--paper:#f3f1ec;--muted:#6d6d6d;--line:#dedede;--max:1180px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-main{min-height:60vh}

.hero{width:100%;height:clamp(360px,46vw,690px);background:#e9e9e9 center/cover no-repeat}.hero--empty{background:#58b9e6}.hero__placeholder{height:100%;display:grid;place-items:center;color:rgba(0,0,0,.42);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase}

.site-nav{border-bottom:1px solid rgba(0,0,0,.04);background:#fff}.site-nav__inner{max-width:var(--max);margin:0 auto;padding:18px 24px;display:flex;justify-content:center}.menu{list-style:none;margin:0;padding:0;display:flex;gap:clamp(22px,4vw,56px);align-items:center;justify-content:center;flex-wrap:wrap}.menu a{font-size:.88rem;letter-spacing:.005em;text-decoration-thickness:1px;text-underline-offset:4px}.menu a:hover,.menu .current-menu-item>a{text-decoration:underline}

.identity{max-width:var(--max);margin:0 auto;padding:58px 24px 40px;display:flex;justify-content:center}.custom-logo-link{display:block}.custom-logo{width:auto;max-width:min(360px,72vw);max-height:120px;object-fit:contain}

.projects-section{max-width:var(--max);margin:0 auto;padding:36px 24px 110px}.projects-carousel{position:relative;width:min(680px,100%);margin:0 auto}.projects-viewport{position:relative;overflow:hidden;background:#f2f2f2;aspect-ratio:4/3}.project-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity 900ms var(--ease)}.project-slide.is-active{opacity:1;pointer-events:auto;z-index:1}.project-slide a{position:absolute;inset:0;display:block}.project-slide img{width:100%;height:100%;object-fit:cover;transition:transform 9s linear}.project-slide.is-active img{transform:scale(1.025)}.project-slide__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.46),rgba(0,0,0,.02) 62%)}.project-slide__text{position:absolute;left:0;right:0;bottom:0;padding:clamp(22px,5vw,44px);color:#fff;text-align:center;text-shadow:0 1px 16px rgba(0,0,0,.24)}.project-slide__title{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.55rem,4vw,2.65rem);font-weight:400;line-height:1.12}.project-slide__subtitle{margin:.6rem 0 0;font-size:.92rem;letter-spacing:.02em}.carousel-btn{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:44px;height:56px;border:0;background:rgba(255,255,255,.9);color:#111;display:grid;place-items:center;cursor:pointer;font-size:1.75rem;font-weight:300;transition:background .2s ease}.carousel-btn:hover,.carousel-btn:focus-visible{background:#fff}.carousel-btn--prev{left:-64px}.carousel-btn--next{right:-64px}.carousel-dots{display:flex;justify-content:center;gap:8px;padding-top:18px}.carousel-dot{width:7px;height:7px;border-radius:50%;border:0;padding:0;background:#c8c8c8;cursor:pointer}.carousel-dot.is-active{background:#222}.projects-empty{text-align:center;color:var(--muted);padding:50px 20px;border:1px solid var(--line)}

.newsletter{border-top:1px solid var(--line);padding:44px 24px 58px}.newsletter__inner{max-width:680px;margin:0 auto}.newsletter__title{font-family:Georgia,'Times New Roman',serif;font-size:1.15rem;font-weight:400;margin:0 0 16px}.newsletter form{display:flex;gap:10px}.newsletter input[type=email],.newsletter input[type=text]{min-width:0;flex:1;border:1px solid #bcbcbc;background:#fff;padding:12px 14px;font:inherit}.newsletter input[type=submit],.newsletter button{border:1px solid #111;background:#111;color:#fff;padding:12px 18px;font:inherit;cursor:pointer}.newsletter__note{font-size:.8rem;color:var(--muted);margin-top:9px}

.site-footer{padding:26px 24px 42px;text-align:center;font-size:.78rem;color:var(--muted)}

.content-page{max-width:780px;margin:0 auto;padding:72px 24px 100px}.content-page h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2rem,5vw,3.4rem)}.content-page .entry-content{font-family:Georgia,'Times New Roman',serif;font-size:1.08rem}.content-page .entry-content a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:840px){.carousel-btn{top:auto;bottom:-4px;transform:none;background:transparent;width:42px;height:42px}.carousel-btn:hover,.carousel-btn:focus-visible{background:#f4f4f4}.carousel-btn--prev{left:0}.carousel-btn--next{right:0}.carousel-dots{min-height:46px;align-items:center;padding-top:8px}.projects-section{padding-bottom:82px}}
@media(max-width:600px){.hero{height:58vh;min-height:340px;max-height:560px}.site-nav__inner{padding:15px 18px}.menu{gap:12px 24px}.menu a{font-size:.8rem}.identity{padding:42px 20px 28px}.projects-section{padding:28px 18px 72px}.projects-viewport{aspect-ratio:1/1}.newsletter{padding-left:18px;padding-right:18px}.newsletter form{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-slide{transition:none}.project-slide img{transition:none!important;transform:none!important}}

/* Projects archive */
.projects-archive{max-width:var(--max);margin:0 auto;padding:76px 24px 110px}.projects-archive__header{text-align:center;margin:0 auto 48px}.projects-archive__header h1{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2rem,5vw,3.35rem)}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,52px)}.project-card__link{display:block}.project-card__image{position:relative;overflow:hidden;aspect-ratio:4/3;background:#f2f2f2}.project-card__image img{width:100%;height:100%;object-fit:cover;transition:transform 700ms var(--ease)}.project-card__link:hover .project-card__image img,.project-card__link:focus-visible .project-card__image img{transform:scale(1.025)}.project-card__placeholder{position:absolute;inset:0;background:#f1f1f1}.project-card__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.48),rgba(0,0,0,.02) 62%)}.project-card__text{position:absolute;left:0;right:0;bottom:0;padding:clamp(22px,4vw,38px);color:#fff;text-align:center;text-shadow:0 1px 14px rgba(0,0,0,.24)}.project-card__text h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(1.35rem,3vw,2.15rem);line-height:1.15}.project-card__text p{margin:.55rem auto 0;max-width:34em;font-size:.88rem}.projects-pagination{margin-top:56px;text-align:center}.projects-pagination .nav-links{display:flex;justify-content:center;gap:14px;align-items:center}.projects-pagination a,.projects-pagination span{padding:6px 8px}.projects-pagination .current{text-decoration:underline;text-underline-offset:4px}.projects-archive__empty{text-align:center;color:var(--muted);padding:50px 20px}
@media(max-width:680px){.projects-archive{padding:54px 18px 80px}.projects-archive__header{margin-bottom:34px}.projects-grid{grid-template-columns:1fr;gap:22px}.project-card__image{aspect-ratio:1/1}}
@media(prefers-reduced-motion:reduce){.project-card__image img{transition:none!important;transform:none!important}}

/* v1.2 visual refinements */
.site-nav{border-bottom:0;background:var(--paper)}
.identity{padding:34px 24px 30px}
.custom-logo{width:min(520px,78vw);max-width:none;max-height:none;height:auto;object-fit:contain}
.newsletter input[type=email],.newsletter input[type=text]{background:rgba(255,255,255,.55)}


/* v1.4 responsive hero art direction */
.hero{position:relative;height:var(--hero-h);background-position:var(--hero-x) var(--hero-y);overflow:hidden}
.hero__signature{position:absolute;left:var(--sig-x);top:var(--sig-y);transform:translate(-50%,-50%);z-index:2;width:min(var(--sig-w),90vw);pointer-events:none}
.hero__signature .custom-logo-link{display:block;width:100%}
.hero__signature .custom-logo{display:block;width:100%;max-width:none;max-height:none;height:auto;object-fit:contain}
.hero__signature-placeholder{font-size:.8rem;color:rgba(255,255,255,.8)}
/* Override the old mobile hero rule: the Customizer now owns hero height at every breakpoint. */
@media(max-width:600px){.hero{height:var(--hero-h);min-height:0;max-height:none}}


/* v2.0 — long, smooth hero-to-paper dissolve.
   The photo remains the second background layer. The first layer is only a
   transparent-to-paper veil, so the hero image itself remains fully visible.
   Closely spaced opacity stops approximate a smooth easing curve and avoid
   obvious ridges while preserving a long, subtle transition. */
.hero{
  background-size:100% 100%,cover;
  background-repeat:no-repeat,no-repeat;
  background-position:center,var(--hero-x) var(--hero-y);
}

/* v2.9 — robust hero/menu overlap.
   The navigation remains in normal flow, then is visually lifted into the
   paper-coloured tail of the hero. The stage margin is reduced by exactly
   the same amount, so no blank band is left behind below the moved menu. */
.hero-nav-stage{position:relative;margin-bottom:calc(-1 * var(--nav-lift, 118px))}
.site-nav{
  position:relative !important;
  inset:auto !important;
  z-index:4;
  margin:0 !important;
  transform:translateY(calc(-1 * var(--nav-lift, 118px))) !important;
  background:transparent !important;
}
.site-nav__inner{padding-top:6px;padding-bottom:6px}

/* Customizable typography */
body{font-family:var(--font-body, Arial, Helvetica, sans-serif)}
.site-nav .menu a{font-family:var(--font-menu, Arial, Helvetica, sans-serif)}
.projects-archive__header h1,.project-card__text h2,.project-slide__title,.newsletter__title{font-family:var(--font-heading, Georgia, 'Times New Roman', serif)}


/* v3.0 — social links alongside navigation. Existing hero, fade and menu-lift behaviour is unchanged. */
.site-nav__inner{position:relative}
.social-links{position:absolute;right:24px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:12px;z-index:5}
.social-link{display:grid;place-items:center;width:25px;height:25px;color:var(--ink);opacity:.78;transition:opacity 160ms ease,transform 160ms ease}
.social-link:hover,.social-link:focus-visible{opacity:1;transform:translateY(-1px)}
.social-link svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.social-link svg path{fill:currentColor;stroke:none}
@media(max-width:900px){.social-links{right:16px;gap:10px}.social-link{width:23px;height:23px}.social-link svg{width:18px;height:18px}}
@media(max-width:600px){.site-nav__inner{padding-left:18px;padding-right:18px;padding-bottom:34px}.social-links{left:50%;right:auto;top:auto;bottom:5px;transform:translateX(-50%);gap:16px}.social-link:hover,.social-link:focus-visible{transform:none}}

/* v3.1 — desktop navigation zones.
   Menu order in Appearance → Menus should be:
   1 Home, 2 About, 3 Blog & Other Musings, 4 Work with me, 5 Upcoming, 6 Contact.
   Desktop places 1–2 at left, 3–5 exactly in the centre, and Contact at right
   immediately before the social icons. Tablet/mobile retain the compact v3.0 layout. */
@media (min-width:901px){
  .site-nav__inner{
    max-width:none;
    width:100%;
    padding-left:24px;
    padding-right:24px;
  }
  .site-nav .menu{
    width:100%;
    display:grid;
    grid-template-columns:auto auto minmax(24px,1fr) auto auto auto minmax(24px,1fr) auto 76px;
    column-gap:clamp(14px,1.65vw,28px);
    align-items:center;
    justify-content:stretch;
  }
  .site-nav .menu > li{margin:0;white-space:nowrap}
  .site-nav .menu > li:nth-child(1){grid-column:1}
  .site-nav .menu > li:nth-child(2){grid-column:2}
  .site-nav .menu > li:nth-child(3){grid-column:4}
  .site-nav .menu > li:nth-child(4){grid-column:5}
  .site-nav .menu > li:nth-child(5){grid-column:6}
  .site-nav .menu > li:nth-child(6){grid-column:8;justify-self:end}
  .social-links{right:24px}
}

/* v3.2 — slightly more breathing room within the left and centre menu groups.
   Contact and the social-icon positioning are intentionally unchanged. */
@media (min-width:901px){
  .site-nav .menu > li:nth-child(1){margin-right:clamp(24px,2.4vw,42px)}
  .site-nav .menu > li:nth-child(3),
  .site-nav .menu > li:nth-child(4){margin-right:clamp(24px,2.4vw,42px)}
}


/* v3.4 — reusable interior-page system. Homepage geometry remains unchanged. */
.interior-nav.site-nav{transform:none !important;margin:0 !important;background:var(--paper) !important;}
.interior-nav .site-nav__inner{padding-top:18px;padding-bottom:18px;}
.zora-interior-hero{width:100%;height:var(--page-hero-h);position:relative;overflow:hidden;background-size:100% 100%,cover;background-repeat:no-repeat,no-repeat;background-position:center,var(--page-hero-x) var(--page-hero-y);}
.zora-interior-hero--empty{background:var(--paper);border-top:1px solid rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.05)}
.zora-interior-hero__placeholder{height:100%;display:grid;place-items:center;text-align:center;padding:24px;color:var(--muted);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.zora-page-content{max-width:1180px;margin:0 auto;padding:44px 24px 100px;}
.zora-page-content article{max-width:100%;}
.zora-page-content h1{font-family:var(--font-heading,Georgia,'Times New Roman',serif);font-weight:400;font-size:clamp(2rem,5vw,3.4rem);margin:0 0 36px;}
.zora-page-content .entry-content{font-family:var(--font-body,Arial,Helvetica,sans-serif);font-size:1.02rem;}
.zora-page-content .entry-content a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.interior-nav .site-nav__inner{padding-top:15px;padding-bottom:15px}.zora-page-content{padding-top:38px}}
@media(max-width:600px){.interior-nav .site-nav__inner{padding-bottom:34px}.zora-page-content{padding:32px 18px 72px}}

/* v3.7 — Blog & Other Musings: irregular photographic post mosaic. */
.zora-blog-page .interior-nav{position:relative;transform:none;margin:0;background:var(--paper)}
.zora-blog-intro{max-width:1180px;margin:0 auto;padding:54px 24px 26px}
.zora-blog-mosaic{max-width:1180px;margin:0 auto;padding:0 24px 76px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:74px;gap:14px}
.zora-blog-tile{position:relative;overflow:hidden;background:rgba(0,0,0,.06);grid-column:span 4;grid-row:span 4;min-height:0}
.zora-blog-tile:nth-child(8n+1){grid-column:span 6;grid-row:span 6}
.zora-blog-tile:nth-child(8n+2){grid-column:span 3;grid-row:span 3}
.zora-blog-tile:nth-child(8n+3){grid-column:span 3;grid-row:span 4}
.zora-blog-tile:nth-child(8n+4){grid-column:span 3;grid-row:span 3}
.zora-blog-tile:nth-child(8n+5){grid-column:span 3;grid-row:span 5}
.zora-blog-tile:nth-child(8n+6){grid-column:span 4;grid-row:span 4}
.zora-blog-tile:nth-child(8n+7){grid-column:span 4;grid-row:span 3}
.zora-blog-tile:nth-child(8n+8){grid-column:span 4;grid-row:span 5}
.zora-blog-tile__link{display:block;width:100%;height:100%;position:relative;color:inherit;text-decoration:none}
.zora-blog-tile__image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.zora-blog-tile__placeholder{width:100%;height:100%;background:rgba(0,0,0,.08)}
.zora-blog-tile__title{position:absolute;left:0;right:0;top:0;margin:0;padding:8px 11px;background:color-mix(in srgb,var(--paper) 88%,transparent);font-family:var(--font-body);font-size:.82rem;font-weight:400;line-height:1.25;z-index:2}
.zora-blog-tile__link:hover .zora-blog-tile__image,.zora-blog-tile__link:focus .zora-blog-tile__image{transform:scale(1.025)}
.zora-blog-pagination{max-width:1180px;margin:-42px auto 58px;padding:0 24px}
.zora-blog-pagination .nav-links{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
@media(max-width:900px){.zora-blog-mosaic{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:68px}.zora-blog-tile,.zora-blog-tile:nth-child(n){grid-column:span 3}.zora-blog-tile:nth-child(5n+1){grid-column:span 6;grid-row:span 5}.zora-blog-tile:nth-child(5n+2){grid-row:span 4}.zora-blog-tile:nth-child(5n+3){grid-row:span 3}.zora-blog-tile:nth-child(5n+4){grid-row:span 5}.zora-blog-tile:nth-child(5n+5){grid-row:span 4}}
@media(max-width:600px){.zora-blog-intro{padding:36px 18px 20px}.zora-blog-mosaic{display:block;padding:0 18px 54px}.zora-blog-tile,.zora-blog-tile:nth-child(n){height:auto;aspect-ratio:4/3;margin-bottom:14px}.zora-blog-tile:nth-child(3n+1){aspect-ratio:1/1}.zora-blog-tile:nth-child(3n+2){aspect-ratio:4/5}.zora-blog-pagination{margin:-26px auto 44px;padding:0 18px}}


/* v3.8 — Blog only: clean-cut hero (no fade) and robust blog navigation.
   Other Zora Pages retain their existing fade unchanged. */
.zora-blog-page .zora-interior-hero{background-size:cover;background-repeat:no-repeat;background-position:var(--page-hero-x) var(--page-hero-y);}
.zora-blog-page .interior-nav.site-nav{display:block !important;visibility:visible !important;opacity:1 !important;position:relative !important;transform:none !important;margin:0 !important;}


/* v3.9 — Work With Me.
   Dedicated editorial layout built on the existing Zora Page structure.
   The interior hero and its approved fade are intentionally unchanged. */
.zora-work-page .zora-page-content{padding-top:18px}
.zora-work-doors{padding:8px 24px 26px}
.zora-work-doors__inner{
  max-width:880px;
  margin:0 auto;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 14px;
}
.zora-work-door{
  display:inline-block;
  padding:9px 16px 8px;
  border:1px solid color-mix(in srgb,var(--ink) 24%,transparent);
  border-radius:999px;
  color:var(--ink);
  font-family:var(--font-menu,Arial,Helvetica,sans-serif);
  font-size:.78rem;
  letter-spacing:.035em;
  line-height:1.2;
  text-decoration:none !important;
  background:transparent;
  transition:background 160ms ease,border-color 160ms ease,transform 160ms ease;
}
.zora-work-door:hover,.zora-work-door:focus-visible{
  background:color-mix(in srgb,var(--ink) 5%,transparent);
  border-color:color-mix(in srgb,var(--ink) 42%,transparent);
  transform:translateY(-1px);
}
.zora-work-content{max-width:900px}
.zora-work-content .entry-content{max-width:760px;margin:0 auto;line-height:1.72}
.zora-work-content .entry-content > h2,
.zora-work-content .entry-content > h3{
  scroll-margin-top:30px;
  font-family:var(--font-heading,Georgia,'Times New Roman',serif);
  font-weight:400;
  font-size:clamp(1.75rem,3.8vw,2.65rem);
  line-height:1.12;
  margin:0 0 26px;
}
.zora-work-content .entry-content > h2:not(:first-child),
.zora-work-content .entry-content > h3:not(:first-child){
  margin-top:clamp(76px,10vw,126px);
  padding-top:clamp(64px,8vw,96px);
  border-top:1px solid var(--line);
}
.zora-work-content .entry-content p{margin:0 0 1.35em}
.zora-work-content .entry-content em{font-family:inherit}
.zora-work-content .entry-content .wp-block-buttons{margin:30px 0 6px}
.zora-work-content .entry-content .wp-block-button__link{
  border:1px solid var(--ink);
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  padding:10px 18px;
  font-family:var(--font-menu,Arial,Helvetica,sans-serif);
  font-size:.82rem;
  text-decoration:none;
}
.zora-work-content .entry-content .wp-block-button__link:hover,
.zora-work-content .entry-content .wp-block-button__link:focus-visible{
  background:var(--ink);
  color:var(--paper);
}
@media(max-width:600px){
  .zora-work-doors{padding:2px 18px 18px}
  .zora-work-doors__inner{gap:8px}
  .zora-work-door{font-size:.74rem;padding:8px 12px 7px}
  .zora-work-page .zora-page-content{padding-top:12px}
  .zora-work-content .entry-content > h2:not(:first-child),
  .zora-work-content .entry-content > h3:not(:first-child){
    margin-top:66px;
    padding-top:58px;
  }
}

/* v3.10: discreet work enquiries and one contact destination */
.zora-work-enquiry-wrap{margin-top:26px!important}.zora-work-enquiry{color:var(--ink);font-size:.93rem;text-decoration:underline;text-underline-offset:5px}.zora-work-enquiry:hover{opacity:.65}
.zora-contact-content .entry-content{max-width:670px;margin:auto}.zora-contact-content h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3rem);font-weight:400;margin:0 0 12px}
.zora-contact-form{display:grid;gap:22px;margin:40px 0 20px}.zora-contact-form label{display:grid;gap:8px;font-size:.88rem}.zora-contact-form input,.zora-contact-form select,.zora-contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #b9b4ae;border-radius:2px;background:transparent;padding:13px 12px;color:var(--ink);font:inherit}.zora-contact-form textarea{resize:vertical}.zora-contact-form button{justify-self:start;border:1px solid var(--ink);background:transparent;border-radius:30px;padding:11px 20px;font:inherit;cursor:pointer;color:var(--ink)}.zora-contact-form button:hover{background:var(--ink);color:var(--paper)}.zora-hp{position:absolute;left:-9999px;height:1px;overflow:hidden}.zora-response-note{font-size:.82rem;line-height:1.6;color:#777;margin-top:28px}.zora-direct-email{font-size:.9rem;margin-top:24px}.zora-form-notice{padding:12px 0;font-weight:600}

/* v3.11 language selector: unobtrusive and responsive */
.zora-language-switch{display:flex;align-items:center;gap:8px;margin-left:14px;white-space:nowrap;font-family:var(--font-menu,Arial,sans-serif);font-size:11px;letter-spacing:.055em}
.zora-language-switch a{color:var(--ink);text-decoration:none;opacity:.6}
.zora-language-switch a[aria-current="page"]{opacity:1;text-decoration:underline;text-underline-offset:4px}
.zora-language-switch a:hover{opacity:1}
@media(max-width:900px){.zora-language-switch{justify-content:center;margin:10px auto 0;width:100%;}}


/* v3.13: Jetpack Form block styling, scoped only to Zora Contact. */
.zora-contact-content .entry-content .wp-block-jetpack-contact-form,
.zora-contact-content .entry-content .wp-block-jetpack-contact-form-container,
.zora-contact-content .entry-content form.contact-form {max-width:100%;margin:36px 0 18px;}
.zora-contact-content .wp-block-jetpack-contact-form .grunion-field-wrap,
.zora-contact-content .wp-block-jetpack-contact-form .jetpack-field,
.zora-contact-content form.contact-form .grunion-field-wrap {margin-bottom:19px;}
.zora-contact-content .wp-block-jetpack-contact-form label,
.zora-contact-content form.contact-form label {font-size:.88rem;line-height:1.5;}
.zora-contact-content .wp-block-jetpack-contact-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.zora-contact-content .wp-block-jetpack-contact-form select,
.zora-contact-content .wp-block-jetpack-contact-form textarea,
.zora-contact-content form.contact-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.zora-contact-content form.contact-form select,
.zora-contact-content form.contact-form textarea {width:100%;max-width:100%;box-sizing:border-box;border:1px solid #b9b4ae;border-radius:2px;background:transparent;padding:13px 12px;color:var(--ink);font:inherit;}
.zora-contact-content .wp-block-jetpack-contact-form button,
.zora-contact-content .wp-block-jetpack-contact-form input[type=submit],
.zora-contact-content form.contact-form button,
.zora-contact-content form.contact-form input[type=submit] {border:1px solid var(--ink);border-radius:30px;background:transparent;color:var(--ink);padding:11px 20px;font:inherit;cursor:pointer;}
.zora-contact-content .wp-block-jetpack-contact-form button:hover,
.zora-contact-content .wp-block-jetpack-contact-form input[type=submit]:hover,
.zora-contact-content form.contact-form button:hover,
.zora-contact-content form.contact-form input[type=submit]:hover {background:var(--ink);color:var(--paper);}
.zora-contact-content .zora-contact-setup-hint{border:1px dashed var(--line);padding:15px;font-size:.85rem;color:var(--muted);margin:28px 0;}
.zora-contact-content .zora-direct-email a{text-decoration:underline;text-underline-offset:4px}

/* v3.14: Jetpack dropdown blends with the site's warm paper background. */
.zora-contact-content select,
.zora-contact-content .wp-block-jetpack-contact-form select,
.zora-contact-content .wp-block-jetpack-contact-form .grunion-field-select,
.zora-contact-content .wp-block-jetpack-contact-form .jetpack-field select,
.zora-contact-content form.contact-form select {
  background-color:var(--paper) !important;
  color:var(--ink);
}
.zora-contact-content select option {background-color:var(--paper);color:var(--ink);}

/* v3.15 — Upcoming: quiet editorial accordion, isolated from all other pages. */
.zora-events{max-width:880px;margin:0 auto 50px;color:var(--ink);font-family:var(--font-body,Arial,Helvetica,sans-serif)}
.zora-events-heading{font-family:var(--font-heading,Georgia,serif)!important;font-size:clamp(2.2rem,5vw,3.5rem)!important;font-weight:400!important;line-height:1.12;margin:0 0 28px!important;text-transform:lowercase}
.zora-event{border-top:1px solid var(--line);margin:0}
.zora-event:last-of-type{border-bottom:1px solid var(--line)}
.zora-event-summary{display:flex;gap:clamp(14px,3vw,34px);align-items:flex-start;padding:27px 0 29px;cursor:pointer;list-style:none}
.zora-event-summary::-webkit-details-marker{display:none}
.zora-event-summary::marker{content:''}
.zora-event-summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.zora-event-date{flex:0 0 75px;display:flex;flex-direction:column;line-height:1.1}
.zora-event-day{font-family:var(--font-heading,Georgia,serif);font-size:clamp(2rem,4vw,2.65rem);font-weight:400;letter-spacing:-.045em}
.zora-event-month{margin-top:7px;font-size:.66rem;letter-spacing:.045em;color:var(--muted);white-space:nowrap}
.zora-event-head{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px;padding-top:4px}
.zora-event-title{font-size:1.06rem;font-weight:500;line-height:1.42}
.zora-event-place{color:var(--muted);font-size:.86rem;line-height:1.4}
.zora-event-time{color:var(--muted);font-size:.76rem;line-height:1.4}
.zora-event-toggle{flex:0 0 19px;margin-top:9px;position:relative;height:19px;opacity:.65}
.zora-event-toggle:before,.zora-event-toggle:after{content:'';position:absolute;top:9px;left:2px;width:15px;height:1px;background:currentColor;transition:transform .2s ease}
.zora-event-toggle:after{transform:rotate(90deg)}
.zora-event[open] .zora-event-toggle:after{transform:rotate(0)}
.zora-event-detail{padding:0 0 35px 109px;display:flex;align-items:flex-start;gap:clamp(20px,4vw,45px)}
.zora-event-detail-text{flex:1;min-width:0;font-size:.91rem;line-height:1.75}
.zora-event-description p{margin:0 0 1.1em}
.zora-event-description a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.zora-event-location{color:var(--muted);font-size:.83rem;margin:15px 0}
.zora-event-links{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:23px;font-size:.78rem}
.zora-event-links a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.zora-event-image{flex:0 0 min(31%,190px)}
.zora-event-photo{width:100%;height:auto;object-fit:contain}
.zora-past-events{margin-top:72px}
.zora-past-events>summary{cursor:pointer;list-style:none;font-family:var(--font-heading,Georgia,serif);font-size:clamp(1.6rem,3vw,2.15rem);font-weight:400;padding-bottom:16px;border-bottom:1px solid var(--line)}
.zora-past-events>summary::-webkit-details-marker{display:none}
.zora-past-events>summary::marker{content:''}
.zora-past-events>summary span{float:right;font:300 1.2rem var(--font-body,Arial,sans-serif)}
.zora-past-events[open]>summary span{transform:rotate(45deg)}
.zora-past-events-list{padding-top:6px}
.zora-events-empty{font-size:.92rem;color:var(--muted);margin:20px 0 60px}
.zora-event-error{color:#9a3838;font-size:.85rem}
@media(max-width:600px){
  .zora-event-summary{gap:14px;padding:22px 0}
  .zora-event-date{flex-basis:59px}
  .zora-event-day{font-size:2rem}
  .zora-event-month{font-size:.56rem}
  .zora-event-title{font-size:.96rem}
  .zora-event-detail{padding:0 0 28px 73px;flex-direction:column-reverse;gap:14px}
  .zora-event-image{width:min(200px,85%);flex:none}
  .zora-event-toggle{flex-basis:16px}
  .zora-event-links{gap:12px 18px}
}

/* v3.16 — Event images sit alongside the essentials even when closed.
   Full event descriptions expand beneath the entire summary row. */
.zora-event-summary{align-items:flex-start;gap:clamp(14px,2.6vw,30px)}
.zora-event-head{flex:1 1 auto}
.zora-event-image{flex:0 1 40%;width:40%;max-width:360px;min-width:0;display:block;align-self:flex-start}
.zora-event-photo{display:block;width:100%;height:auto;max-height:260px;object-fit:contain;object-position:center top}
.zora-event-detail{display:block;padding:4px 30px 36px 109px}
.zora-event-detail-text{max-width:100%;font-size:.91rem;line-height:1.75}
@media(max-width:600px){
  .zora-event-summary{display:grid;grid-template-columns:59px minmax(0,1fr) 18px;gap:10px 14px;align-items:start}
  .zora-event-date{grid-column:1;grid-row:1}
  .zora-event-head{grid-column:2;grid-row:1}
  .zora-event-toggle{grid-column:3;grid-row:1}
  .zora-event-image{grid-column:2 / 3;grid-row:2;width:100%;max-width:320px;justify-self:start}
  .zora-event-photo{max-height:250px}
  .zora-event-detail{padding:0 0 28px 73px;display:block}
}

/* v3.17 — Launch refinements: only the About page is given a reading column. */
.zora-about-page .zora-page-content{max-width:860px;padding-top:58px;padding-bottom:110px}
.zora-about-page .entry-content{max-width:730px;margin-inline:auto;line-height:1.82;font-size:1.045rem}
.zora-about-page .entry-content p{margin:0 0 1.35em}
.zora-about-page .entry-content > h2,.zora-about-page .entry-content > h3{font-family:var(--font-heading,Georgia,serif);font-weight:400;line-height:1.25;margin:2.4em 0 .7em}
.zora-about-page .entry-content > h2:first-child,.zora-about-page .entry-content > h3:first-child{margin-top:0}
.zora-about-page .entry-content > p:has(> strong:only-child){margin-top:2.4em;margin-bottom:.7em}
.zora-about-page .entry-content > p:has(> strong:only-child) strong{font-family:var(--font-heading,Georgia,serif);font-size:1.22rem;font-weight:400}
.zora-about-page .entry-content .wp-block-quote{margin:2.3em auto;padding-left:1.5em}
.zora-about-page .entry-content .wp-block-embed{margin:2.4em auto}
@media(max-width:600px){.zora-about-page .zora-page-content{padding:35px 22px 75px}.zora-about-page .entry-content{font-size:1rem;line-height:1.75}}

/* Upcoming uses the familiar interior hero with a quieter, shorter silhouette. */
.zora-upcoming-page .zora-page-content{max-width:1020px;padding-top:50px}
.zora-upcoming-page .zora-page-content .entry-content{max-width:100%}
.zora-upcoming-page .zora-events{max-width:880px}
.zora-upcoming-page .zora-interior-hero{height:min(var(--page-hero-h),360px)}
@media(max-width:900px){.zora-upcoming-page .zora-interior-hero{height:min(var(--page-hero-h),300px)}}
@media(max-width:600px){.zora-upcoming-page .zora-interior-hero{height:min(var(--page-hero-h),240px)}.zora-upcoming-page .zora-page-content{padding:34px 18px 65px}}
.zora-event{scroll-margin-top:28px}
.zora-event:target{outline:none}

/* Dynamic exhibition carousel: text-only slides are intentional, never broken-image gaps. */
.project-slide__label{display:block;margin:0 0 13px;font-family:var(--font-body,Arial,sans-serif);font-size:.66rem;letter-spacing:.17em;text-transform:uppercase;font-weight:600}
.project-slide--typographic a{background:var(--paper);color:var(--ink);display:flex;align-items:center;justify-content:center}
.project-slide--typographic .project-slide__shade{display:none}
.project-slide--typographic .project-slide__text{position:relative;bottom:auto;color:var(--ink);text-shadow:none;padding:clamp(28px,6vw,55px)}
.project-slide--typographic .project-slide__title{font-size:clamp(1.65rem,4.3vw,3rem)}
.project-slide--typographic .project-slide__subtitle{color:var(--muted)}
.project-slide--typographic .project-slide__label{color:var(--muted)}
.projects-viewport:has(.project-slide--typographic.is-active){background:var(--paper)}

/* v3.18 — small, launch-safe refinements. Existing hero fade and navigation untouched. */
.project-slide__title{font-size:clamp(1.45rem,3.5vw,2.35rem)}
.project-slide--typographic .project-slide__title{font-size:clamp(1.55rem,3.7vw,2.55rem)}
/* Artwork section supplies breathing room; it only exists when an image is selected. */
.zora-home-flourish{max-width:var(--max);margin:0 auto;min-height:clamp(240px,34vw,430px);padding:42px 24px 54px;display:flex;justify-content:center;align-items:center}
.zora-home-flourish__image{display:block;width:auto;max-width:min(330px,64vw);max-height:clamp(190px,29vw,355px);height:auto;object-fit:contain}
.zora-home-flourish + .projects-section{padding-top:40px}
@media(max-width:600px){.zora-home-flourish{min-height:260px;padding:40px 20px 56px}.zora-home-flourish__image{max-width:57vw;max-height:250px}}
/* Newsletter is a gentle continuation rather than a full-width rule. */
.newsletter{border-top:0;position:relative}
.newsletter::before{content:'';display:block;width:min(240px,32vw);height:1px;background:rgba(0,0,0,.11);margin:0 auto 36px}
.newsletter__title{font-family:var(--font-heading,Georgia,'Times New Roman',serif);font-size:1.02rem;line-height:1.4}
/* Upcoming hero reduced to approximately two thirds of its previous maximum. */
.zora-upcoming-page .zora-interior-hero{height:min(var(--page-hero-h),240px)}
@media(max-width:900px){.zora-upcoming-page .zora-interior-hero{height:min(var(--page-hero-h),200px)}}
@media(max-width:600px){.zora-upcoming-page .zora-interior-hero{height:min(var(--page-hero-h),160px)}}
/* Two-column, varied mosaic on phones. Avoid tiny three-column tiles. */
@media(max-width:600px){
 .zora-blog-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:65px;gap:10px;padding:0 14px 54px}
 .zora-blog-tile,.zora-blog-tile:nth-child(n){grid-column:span 1;grid-row:span 3;aspect-ratio:auto;height:auto;margin:0}
 .zora-blog-tile:nth-child(6n+1){grid-column:span 2;grid-row:span 5}
 .zora-blog-tile:nth-child(6n+2){grid-row:span 4}
 .zora-blog-tile:nth-child(6n+3){grid-row:span 3}
 .zora-blog-tile:nth-child(6n+4){grid-column:span 2;grid-row:span 4}
 .zora-blog-tile:nth-child(6n+5){grid-row:span 4}
 .zora-blog-tile:nth-child(6n+6){grid-row:span 3}
}
/* Blog titles: restrained white lettering, anchored top-left. */
.zora-blog-tile__title{right:auto;max-width:94%;padding:12px 15px;background:linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.17));color:#fff;font-family:var(--font-heading,Georgia,'Times New Roman',serif);font-size:clamp(1.06rem,2.2vw,1.42rem);line-height:1.2;text-shadow:0 1px 10px rgba(0,0,0,.25)}
@media(max-width:600px){.zora-blog-tile__title{font-size:clamp(.98rem,3.8vw,1.23rem);padding:9px 11px}}
/* About: distinct breathing room for embeds and closing italic reflections. */
.zora-about-page .entry-content .wp-block-embed,.zora-about-page .entry-content .wp-block-video,.zora-about-page .entry-content .wp-block-embed-youtube{margin:3.8em auto 4em}
.zora-about-page .entry-content > p:has(> em){margin-top:2.1em}
.zora-about-page .entry-content > p:has(> em) + p:has(> em){margin-top:.35em}
/* Work With Me: replace heading divider rules with the optional shared flourish. */
.zora-work-content .entry-content > h2:not(:first-child),.zora-work-content .entry-content > h3:not(:first-child){border-top:0;position:relative}
body.zora-has-flourish .zora-work-content .entry-content > h2:not(:first-child)::before,
body.zora-has-flourish .zora-work-content .entry-content > h3:not(:first-child)::before{content:'';position:absolute;left:50%;top:0;transform:translate(-50%,-50%);width:68px;height:76px;background-image:var(--zora-flourish-url);background-position:center;background-size:contain;background-repeat:no-repeat;pointer-events:none}


/* v3.19 — Blog titles float within the image, matching the carousel's quiet editorial feel. */
.zora-blog-tile__link::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(to top,rgba(0,0,0,.53) 0%,rgba(0,0,0,.26) 24%,rgba(0,0,0,0) 65%);
}
.zora-blog-tile__title{
  top:auto;
  bottom:0;
  left:0;
  right:0;
  max-width:none;
  margin:0;
  padding:clamp(15px,2.6vw,27px);
  background:none;
  color:#fff;
  font-family:var(--font-heading,Georgia,'Times New Roman',serif);
  font-size:clamp(1.18rem,2.45vw,1.8rem);
  font-weight:400;
  line-height:1.17;
  text-shadow:0 1px 13px rgba(0,0,0,.36);
  overflow-wrap:anywhere;
  z-index:2;
}
/* A text-only tile is intentional, rather than white type on a pale empty image. */
.zora-blog-tile__link:has(.zora-blog-tile__placeholder)::after{display:none}
.zora-blog-tile__link:has(.zora-blog-tile__placeholder) .zora-blog-tile__title{color:var(--ink);text-shadow:none}
@media(max-width:600px){
  .zora-blog-tile__title{font-size:clamp(1.08rem,4.1vw,1.45rem);padding:clamp(12px,3.5vw,20px)}
}
/* Enlarge the existing botanical dividers without changing the page's section spacing. */
body.zora-has-flourish .zora-work-content .entry-content > h2:not(:first-child)::before,
body.zora-has-flourish .zora-work-content .entry-content > h3:not(:first-child)::before{
  width:90px;
  height:100px;
}

/* v3.20 — launch refinements: inset blog tiles and titles nearer the lower edge. */
.zora-blog-page .zora-blog-mosaic{padding-top:clamp(10px,1.5vw,18px)}
.zora-blog-tile__title{bottom:0;padding:clamp(5px,.9vw,11px) clamp(10px,1.65vw,19px) clamp(5px,.8vw,9px)}
@media(max-width:600px){.zora-blog-page .zora-blog-mosaic{padding:12px 14px 54px;gap:8px}.zora-blog-tile__title{padding:5px 8px 5px;font-size:clamp(1rem,3.8vw,1.35rem)}}
/* Individual journal entries: editorial reading column, featured artwork and quiet metadata. */
.zora-journal-post .interior-nav.site-nav{position:relative!important;transform:none!important;margin:0!important;background:var(--paper)}
.zora-journal-post__article{max-width:820px;margin:0 auto;padding:clamp(35px,5vw,75px) 24px 70px}
.zora-journal-post__heading{max-width:690px;margin:0 auto 34px}
.zora-journal-post__title{font-family:var(--font-heading,Georgia,serif);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:400;line-height:1.13;margin:0 0 18px}
.zora-journal-post__meta{color:var(--muted);font-size:.83rem;letter-spacing:.015em}
.zora-journal-post__image{margin:0 auto clamp(35px,6vw,68px);max-width:100%;}
.zora-journal-post__image img{display:block;width:100%;height:auto}
.zora-journal-post__content{max-width:690px;margin:0 auto;font-size:1.06rem;line-height:1.83}
.zora-journal-post__content p{margin:0 0 1.55em}
.zora-journal-post__content h2,.zora-journal-post__content h3{font-family:var(--font-heading,Georgia,serif);font-weight:400;line-height:1.2;margin:1.8em 0 .7em}
.zora-journal-post__content h2{font-size:clamp(1.65rem,3.3vw,2.3rem)}
.zora-journal-post__content h3{font-size:clamp(1.3rem,2.5vw,1.8rem)}
.zora-journal-post__content a{text-decoration:underline;text-underline-offset:3px}
.zora-journal-post__content blockquote{border-left:1px solid rgba(0,0,0,.23);margin:2em 0;padding:.1em 0 .1em 1.5em;font-family:var(--font-heading,Georgia,serif);font-size:1.28rem;font-style:italic}
.zora-journal-post__content .wp-block-image,.zora-journal-post__content figure{margin:2.3em 0}
.zora-journal-post__back{display:block;max-width:690px;margin:50px auto 0;font-size:.87rem;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.zora-journal-post__article{padding:38px 19px 55px}.zora-journal-post__heading{margin-bottom:26px}.zora-journal-post__image{margin-bottom:34px}.zora-journal-post__content{font-size:1rem;line-height:1.76}}

/* v3.22 — smaller individual post titles; Jetpack decorations removed from journal pages. */
.zora-journal-post__title{font-size:clamp(1.65rem,3.1vw,2.45rem);line-height:1.2}
.zora-journal-post .sharedaddy,
.zora-journal-post .sd-sharing,
.zora-journal-post .jetpack-likes-widget-wrapper,
.zora-journal-post .jetpack-likes-widget,
.zora-journal-post .jetpack-related-posts,
.zora-journal-post #jp-relatedposts,
.zora-journal-post .jp-relatedposts,
.zora-journal-post .wp-block-jetpack-like,
.zora-journal-post .wp-block-jetpack-related-posts,
.zora-journal-post .post-likes-widget-placeholder{display:none!important}
/* Text-led tiles: the title and a short extract become the artwork. */
.zora-blog-tile--text{background:color-mix(in srgb,var(--paper) 93%,#b6ada4)}
.zora-blog-tile--text .zora-blog-tile__link{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:clamp(12px,2vw,24px);padding:clamp(16px,2.5vw,30px);overflow:hidden}
.zora-blog-tile--text .zora-blog-tile__link::after{display:none}
.zora-blog-tile--text .zora-blog-tile__title{position:static;max-width:none;padding:0;margin:0;background:none;color:var(--ink);text-shadow:none;font-size:clamp(1.22rem,2.2vw,1.8rem)}
.zora-blog-tile--text .zora-blog-tile__excerpt{margin:0;color:var(--ink);font-size:clamp(.85rem,1.4vw,1.04rem);line-height:1.55;opacity:.82;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden;overflow-wrap:anywhere}
@media(max-width:600px){.zora-blog-tile--text .zora-blog-tile__link{padding:14px;gap:10px}.zora-blog-tile--text .zora-blog-tile__excerpt{font-size:.88rem;-webkit-line-clamp:5}}


/* v3.23 — text-led mosaic: chosen quotation or opening lines, with preserved lineation. */
.zora-blog-tile--text .zora-blog-tile__link{
  display:flex; flex-direction:column; align-items:flex-start;
  padding:clamp(18px,2.8vw,34px); gap:0;
}
.zora-blog-tile--text .zora-blog-tile__eyebrow{
  font-size:.65rem; letter-spacing:.11em; text-transform:uppercase;
  color:var(--muted); margin:0 0 clamp(16px,2.5vw,30px);
}
.zora-blog-tile--text .zora-blog-tile__title{
  font-family:var(--font-heading,Georgia,serif);
  font-size:clamp(1.3rem,2.35vw,1.95rem); line-height:1.2;
  margin:0 0 clamp(15px,2vw,26px);
}
.zora-blog-tile--text .zora-blog-tile__excerpt{
  display:block; -webkit-line-clamp:unset; white-space:pre-line;
  font-family:var(--font-body,Arial,sans-serif); font-size:clamp(.88rem,1.2vw,1rem);
  line-height:1.65; max-width:36ch; margin:0 0 20px;
  overflow:hidden; overflow-wrap:anywhere;
}
.zora-blog-tile--text .zora-blog-tile__readmore{
  margin-top:auto; padding-top:10px; color:var(--muted);
  font-size:.71rem; letter-spacing:.03em;
}
@media(max-width:600px){
  .zora-blog-tile--text .zora-blog-tile__link{padding:clamp(13px,3.5vw,22px)}
  .zora-blog-tile--text .zora-blog-tile__eyebrow{font-size:.59rem;margin-bottom:14px}
  .zora-blog-tile--text .zora-blog-tile__title{font-size:clamp(1.14rem,4.3vw,1.55rem);margin-bottom:13px}
  .zora-blog-tile--text .zora-blog-tile__excerpt{font-size:clamp(.8rem,3.1vw,.95rem);line-height:1.52}
}
/* Upcoming is a curated selection, while the menu label stays 'Upcoming'. */
.zora-upcoming-page .zora-events-heading{max-width:880px;margin:0 auto 34px!important}

/* v3.24: More understated selected concerts heading, without changing event row typography. */
.zora-upcoming-page .zora-events-heading{font-size:clamp(1.65rem,3vw,2.25rem)!important;line-height:1.2}


/* v3.25 — reuse the Work With Me botanical pause before About's closing reflection. */
.zora-about-closing-flourish{
  width:90px;
  height:100px;
  margin:4.2em auto 1.6em;
  background-image:var(--zora-flourish-url);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}
.zora-about-page .entry-content > .zora-about-closing-flourish + p:has(> em){margin-top:0}

/* v3.27 — the About closing botanical pause, independent of PHP text matching.
   Target the first of two consecutive italic closing paragraphs. */
body.zora-has-flourish .zora-about-page .entry-content p:has(em):has(+ p em)::before,
body.zora-has-flourish .zora-about-page .entry-content p:has(i):has(+ p i)::before {
  content: "";
  display: block;
  width: 90px;
  height: 100px;
  margin: 4.2em auto 1.6em;
  background-image: var(--zora-flourish-url);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* v3.28: use editable Heading and Paragraph blocks on Upcoming. */
.zora-upcoming-page .entry-content > h1:first-child,
.zora-upcoming-page .entry-content > h2:first-child{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.65rem,3vw,2.3rem);font-weight:400;line-height:1.2;margin:0 0 26px}
.zora-upcoming-page .entry-content .zora-upcoming-note{color:var(--muted);font-size:.88rem;font-style:italic;text-align:center;margin:2rem auto 0}
/* Preserve the lineation of editorial blog quotations in homepage slides. */
.project-slide--typographic .project-slide__subtitle{display:block;white-space:pre-line;line-height:1.7;max-height:10.2em;overflow:hidden;max-width:36rem;margin-left:auto;margin-right:auto}
