/* This same stylesheet is loaded in published articles and both visual editors. */
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) [class*="is-style-om-heading"]{color:#353b34;font-weight:700;line-height:1.65;margin:1.8em 0 .8em}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-heading-line{padding:0 0 .45em;border:0;border-bottom:2px solid #c16b45;background:none}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-heading-bar{padding:.2em 0 .2em .7em;border:0;border-left:4px solid #b56645;background:none}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-heading-paper{padding:.6em .85em;border:0;border-radius:5px;background:#f5f0e5}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-heading-center{text-align:center;padding:.6em 0;border:0;background:none}
.is-style-om-heading-center::after{content:"";display:block;width:42px;height:2px;background:#b56645;margin:.6em auto 0}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-lead{font-size:1.12em;font-weight:500;line-height:1.9;color:#4d584d}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.is-style-om-note,.is-style-om-tip,.is-style-om-caution,.is-style-om-summary){padding:16px 20px;margin:1.3em 0;border:1px solid #dcded4;border-radius:7px;background:#f7f7f2;color:#353b34;line-height:1.85;overflow-wrap:anywhere}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-tip{background:#f1f6ef;border-color:#bfcfb9;border-left:4px solid #799374}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-caution{background:#fff7e9;border-color:#e4cda5;border-left:4px solid #c49851}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-summary{background:#faf3ee;border-color:#d9bba8;border-top:3px solid #b77a56}
:is(.is-style-om-note,.is-style-om-tip,.is-style-om-caution,.is-style-om-summary)>:first-child{margin-top:0}
:is(.is-style-om-note,.is-style-om-tip,.is-style-om-caution,.is-style-om-summary)>:last-child{margin-bottom:0}
.is-style-om-marker{background:linear-gradient(transparent 62%,#f8e3a0 62%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
p.is-style-om-marker{background:none!important}
p.is-style-om-marker{ text-decoration:underline;text-decoration-color:#efcf72;text-decoration-thickness:.32em;text-underline-offset:-.12em;text-decoration-skip-ink:none}
.is-style-om-accent{color:#a34f2c!important;font-weight:700}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-small{font-size:.85em;color:#687064;line-height:1.7}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.is-style-om-list-check,.is-style-om-list-arrow){list-style:none;padding:0;margin:1em 0}
:is(.is-style-om-list-check,.is-style-om-list-arrow)>li{position:relative;padding:.35em 0 .35em 1.8em;margin:0;border-bottom:1px solid #e9e9e1}
.is-style-om-list-check>li::before{content:"✓";position:absolute;left:.2em;color:#637e5e;font-weight:700}
.is-style-om-list-arrow>li::before{content:"→";position:absolute;left:.1em;color:#b56645}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-list-panel{background:#f6f4ed;border-radius:7px;padding:16px 20px 16px 40px;margin:1em 0}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-list-steps{list-style:none;counter-reset:om-step;padding:0;margin:1em 0}
.is-style-om-list-steps>li{counter-increment:om-step;position:relative;padding:.5em 0 .8em 2.8em;margin:0}
.is-style-om-list-steps>li::before{content:counter(om-step);position:absolute;left:0;top:.5em;display:grid;place-items:center;width:1.8em;height:1.8em;border-radius:50%;background:#f0e5d8;color:#845f3f;font-weight:700;line-height:1}
:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) .is-style-om-quote{border:0;border-left:3px solid #b8bba9;background:#f7f7f3;color:#5f675b;padding:16px 22px;margin:1.4em 0;font-style:normal}
.is-style-om-quote p{margin-top:0}.is-style-om-quote cite{font-size:.85em}
/* Default article tables share the site's paper colours in both editors. */
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table{width:100%;margin:28px 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-spacing:0;border-collapse:separate;border-radius:0;background:var(--paper);font-size:.93em;line-height:1.85;color:var(--ink)}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-table,figure.is-style-om-table){max-width:100%;margin:28px 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-table,figure.is-style-om-table) table{margin:0;min-width:480px}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table :is(th,td){padding:13px 16px;border:0;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table th{background:var(--soft);font-weight:600;text-align:left}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table thead{border:0}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table thead th{color:var(--ink)}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table tbody td{background:var(--paper)}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table>:last-child>tr:last-child>:is(th,td){border-bottom:0}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table :is(p,ul,ol){margin:0}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) .wp-block-table figcaption{margin-top:9px;color:var(--muted);font-size:.85em;line-height:1.7}
@media(max-width:600px){:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table{font-size:14px}:is(.prose,.om-editorial-editor,.editor-styles-wrapper) table :is(th,td){padding:11px 13px}}
img.is-style-om-photo,.is-style-om-photo img{box-sizing:border-box;padding:8px;background:#fff;border:1px solid #e1ddd2;border-radius:5px;box-shadow:0 3px 10px #3c39200d;max-width:100%;height:auto}
@media(max-width:600px){:is(.feature-prose,.static-content,.news-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.is-style-om-note,.is-style-om-tip,.is-style-om-caution,.is-style-om-summary){padding:12px 14px}}

/* Compact article embeds; shared by the editor and published content. */
.om-article-embed{margin:18px 0;border:1px solid #e7e7df;border-radius:7px;background:#fff;overflow:hidden;color:#292b29;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Yu Gothic",Meiryo,sans-serif}
:is(.prose,.om-editorial-editor,.editor-styles-wrapper) .om-article-embed>a,.om-article-embed>a{display:flex;align-items:center;gap:14px;padding:12px;color:#292b29;text-decoration:none;font-size:14px;line-height:1.6}
.om-article-embed-image{flex:0 0 100px;align-self:center}
.om-article-embed-image img{display:block;width:100%;height:76px;object-fit:cover;border-radius:4px}
.om-article-embed-copy{display:block;min-width:0;flex:1}
.om-article-embed-site{display:block;font-size:10px;color:#686b62;margin-bottom:3px}
.om-article-embed-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;font-weight:650;line-height:1.6}
.om-article-embed-description{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;color:#686b62;margin-top:4px;line-height:1.6}
.om-article-embed-arrow{flex-shrink:0;color:#cd3926}
.om-article-embed:hover{border-color:#c9b7a7;background:#fffdfa}
.om-article-embed a:focus-visible{outline:2px solid #cd3926;outline-offset:-3px}
.wp-block-embed:has(.om-article-embed){margin:18px 0}
.wp-block-embed__wrapper:has(.om-article-embed)::before{display:none!important}
@media(max-width:600px){.om-article-embed-image{flex-basis:72px}.om-article-embed-image img{height:64px}.om-article-embed>a,:is(.prose,.om-editorial-editor,.editor-styles-wrapper) .om-article-embed>a{gap:10px;padding:10px}.om-article-embed-copy strong{font-size:13px}.om-article-embed-arrow{display:none}}

/* Give article links a little more presence without a site-name row. */
.om-article-embed{border-color:#dbd6ca;background:#fffdf8;box-shadow:0 2px 7px #39322208}
.om-article-embed>a,:is(.prose,.om-editorial-editor,.editor-styles-wrapper) .om-article-embed>a{padding:16px;gap:16px}
.om-article-embed-image{flex-basis:120px}.om-article-embed-image img{height:88px}.om-article-embed-copy strong{font-size:18px}.om-article-embed-description{font-size:12px;margin-top:6px}
@media(max-width:600px){.om-article-embed>a,:is(.prose,.om-editorial-editor,.editor-styles-wrapper) .om-article-embed>a{padding:13px;gap:12px}.om-article-embed-image{flex-basis:88px}.om-article-embed-image img{height:76px}.om-article-embed-copy strong{font-size:16px}}
.om-article-embed-site{display:none}

/* Embedded editorial tools reuse the festival page's hotel/product styling. */
.om-shortcode{margin:28px 0;clear:both}
.om-shortcode-heading{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.prose .om-shortcode-heading h2{margin:0;padding:0;border:0;font-size:22px;line-height:1.6}
.om-shortcode .event-lodging{font-size:14px;line-height:1.75}
.om-shortcode .trip-gear{margin:0}
.om-shortcode-notice{padding:12px 16px;border:1px dashed #c5bbae;border-radius:5px;color:#625b51;font-size:13px}
.om-festival-meta{display:block;font-size:11px;color:#686b62;margin-bottom:3px}
.om-shortcode .lodging-hotel-price small{white-space:normal}
.om-shortcode .lodging-hotel-body{grid-template-columns:minmax(0,1fr) minmax(130px,185px)}
@media(max-width:600px){.prose .om-shortcode-heading h2{font-size:19px}.om-shortcode{margin:22px 0}}

/* Article photos: captions sit on the image in the frontend and both editors. */
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) img:not(:where(.om-character-face img,.om-character-illustration img)){border-radius:8px}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-image,.wp-caption,figure:has(>img):has(>figcaption),figure:has(>a>img):has(>figcaption)):not(.om-character-face):not(.om-character-illustration){position:relative;max-width:100%}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-image,.wp-caption)>img,
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-image,.wp-caption)>a>img{display:block;margin-bottom:0}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-image,.wp-caption,figure:has(>img),figure:has(>a>img)):not(.om-character-face):not(.om-character-illustration)>:is(figcaption,.wp-caption-text){position:absolute;left:0;right:0;bottom:0;z-index:1;box-sizing:border-box;margin:0;padding:8px 12px;border-radius:0 0 8px 8px;background:rgba(30,33,28,.65);color:#fff;font-size:12px;line-height:1.65;text-align:left;overflow-wrap:anywhere}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-image,.wp-caption)>:is(figcaption,.wp-caption-text) a{color:inherit;text-decoration:underline}
@media(max-width:600px){:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-block-image,.wp-caption,figure:has(>img),figure:has(>a>img)):not(.om-character-face):not(.om-character-illustration)>:is(figcaption,.wp-caption-text){font-size:11px;padding:6px 10px}}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(figure.wp-block-image,figure:has(>img):has(>figcaption),figure:has(>a>img):has(>figcaption)):not(.om-character-face):not(.om-character-illustration){width:fit-content}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) .wp-caption{padding:0;border:0}
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) .wp-caption>img,
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) .wp-caption>a>img{width:100%}
/* Keep consecutive captioned images separated after captions become overlays. */
:is(.feature-prose,.om-editorial-editor,.editor-styles-wrapper) :is(.wp-caption,figure.wp-block-image,figure:has(>img):has(>figcaption),figure:has(>a>img):has(>figcaption)):not(.om-character-face):not(.om-character-illustration){margin-bottom:24px}

/* Keep embedded festival cards independent of article paragraph/link typography. */
.om-shortcode-events{container-type:inline-size;min-width:0;max-width:100%;font-size:14px;line-height:1.8}
.om-shortcode-events .event-card h3{font-size:17px;margin:8px 0;line-height:1.65;letter-spacing:.01em;padding:0;border:0}
.om-shortcode-events .event-card a{color:inherit;text-decoration:none}
.om-shortcode-events .event-card a:hover{color:var(--accent)}
.om-shortcode-events .card-media img{border-radius:0}
.om-shortcode-events .card-copy{font-size:12px;line-height:1.85;margin:0 0 13px}
.om-shortcode-events .card-tags a{color:#686e62}
.om-shortcode-events .card-action-labels a{color:inherit}
.om-shortcode-events .card-detail{font-size:11px}
@container(max-width:1050px){.om-shortcode-events .upcoming-track{grid-auto-columns:calc((100% - 66px)/3.1);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - (100% - 66px)/31),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - (100% - 66px)/31),transparent 100%)}}
@container(max-width:760px){.om-shortcode-events .upcoming-track{grid-auto-columns:calc((100% - 44px)/2.1);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - (100% - 44px)/21),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - (100% - 44px)/21),transparent 100%)}}
@container(max-width:600px){.om-shortcode-events .upcoming-track{grid-auto-columns:calc((100% - 16px)/1.1);gap:16px;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - (100% - 16px)/11),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - (100% - 16px)/11),transparent 100%)}}
.om-shortcode-events .upcoming-track.is-at-end{-webkit-mask-image:none;mask-image:none}
