:root {
  --paper: #f4ecd9;
  --paper-light: #faf5e9;
  --paper-dark: #e9ddc2;
  --ink: #22201c;
  --cobalt: #293d86;
  --orange: #e96f38;
  --tomato: #c84439;
  --mustard: #d7a83b;
  --olive: #777e43;
  --rose: #cf6e73;
  --rule: rgba(34, 32, 28, .72);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: "Assistant", "Noto Sans Hebrew", "Arial Hebrew", Arial, sans-serif; font-size: 21px; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button,input { font: inherit; }
img { display: block; width: 100%; }
.retro-site { overflow: hidden; background-color: var(--paper); background-image: radial-gradient(rgba(75, 55, 31, .09) .6px, transparent .7px); background-size: 5px 5px; }

.paper-topline { min-height: 46px; padding: 10px max(6vw, 30px); display: flex; justify-content: space-between; align-items: center; background: var(--ink); color: var(--paper); font-size: 18px; font-weight: 750; }
.paper-topline a { color: var(--mustard); font-weight: 900; }

.masthead { width: min(1390px, calc(100% - 84px)); min-height: 112px; margin: 0 auto; display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 37px; border-bottom: 3px double var(--rule); }
.brand-mark { display: inline-flex; flex-direction: column; align-items: flex-start; line-height: .81; }
.brand-mark > span { color: var(--tomato); font-size: 26px; font-weight: 950; }
.brand-mark > strong { color: var(--ink); font-size: 45px; letter-spacing: -.075em; font-weight: 950; }
.brand-mark-light > strong { color: var(--paper); }
.masthead-note { margin: 0; padding-right: 20px; border-right: 1px solid var(--rule); color: #555047; font-size: 17px; line-height: 1.5; }
.masthead nav { justify-self: center; display: flex; align-items: center; gap: 31px; font-size: 20px; font-weight: 850; }
.masthead nav > ul { margin: 0; padding: 0; display: flex; align-items: center; gap: 31px; list-style: none; }
.masthead nav li { margin: 0; padding: 0; }
.masthead nav a:hover,.masthead-cta:hover { color: var(--tomato); }
.masthead-cta { display: inline-flex; align-items: center; gap: 9px; padding: 10px 0; border-bottom: 2px solid var(--orange); font-size: 19px; font-weight: 850; }

.hero-cover { width: min(1390px, calc(100% - 84px)); min-height: 692px; margin: 0 auto; padding: 78px 0 64px; display: grid; grid-template-columns: .94fr 1.06fr; align-items: center; gap: 55px; }
.overline,.section-label { margin: 0 0 26px; font-size: 19px; font-weight: 850; }
.overline { display: flex; align-items: center; gap: 12px; }
.overline > span { padding: 5px 8px; background: var(--tomato); color: var(--paper-light); transform: rotate(-2deg); }
.cover-copy h1,.feature-copy h2,.event-poster-copy h2,.subscription-copy h2 { margin: 0; font-size: clamp(59px, 5.8vw, 92px); line-height: 1.07; letter-spacing: -.085em; font-weight: 950; }
.cover-copy h1 > span { display: inline-block; margin-top: 4px; padding: .03em .13em .07em; background: var(--ink); color: var(--paper-light); }
.cover-punchline { margin: 16px 0 0; color: var(--cobalt); font-size: clamp(40px, 3.9vw, 61px); line-height: 1.07; letter-spacing: -.07em; font-weight: 850; }
.cover-intro,.feature-text,.poster-lead,.about-copy > p:not(.section-label) { max-width: 560px; margin: 25px 0 0; font-size: 21px; line-height: 1.9; }
.cover-actions { display: flex; align-items: center; gap: 12px; margin-top: 26px; }
.retro-button { min-height: 57px; padding: 13px 19px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 0; font-size: 19px; font-weight: 900; cursor: pointer; transition: transform .18s; }
.retro-button:hover { transform: translateY(-3px); }
.orange-button { background: var(--orange); color: var(--paper-light); }
.outline-button { border: 1px solid var(--ink); color: var(--ink); }
.cover-note { margin: 20px 0 0; font-size: 18px; font-weight: 650; }

.cover-collage { position: relative; min-height: 480px; display: grid; align-items: center; }
.collage-frame { position: relative; padding: 11px; background: var(--paper-light); box-shadow: 8px 10px 0 rgba(34,32,28,.13); }
.cover-frame { transform: rotate(-2.1deg); }
.cover-frame::before,.podcast-frame::before,.event-frame::before { content: ""; position: absolute; z-index: 2; top: -14px; left: 17%; width: 93px; height: 29px; transform: rotate(5deg); background: rgba(215,168,59,.56); }
.paper-label { position: absolute; display: block; padding: 11px 14px; color: var(--ink); font-size: 19px; font-weight: 900; }
.label-top { top: 17px; right: -8px; background: var(--mustard); transform: rotate(3deg); }
.label-bottom { bottom: 8px; left: 0; background: var(--paper-light); transform: rotate(-4deg); line-height: 1.5; }
.label-bottom strong { color: var(--tomato); }

.edition-strip { min-height: 62px; padding: 15px max(7vw, 30px); display: flex; justify-content: center; align-items: center; gap: 32px; border-block: 2px solid var(--ink); font-size: 20px; font-weight: 850; }
.edition-strip > i { width: 8px; height: 8px; border-radius: 50%; background: var(--orange); }

.two-columns { width: min(1200px, calc(100% - 80px)); margin: 88px auto 40px; display: grid; grid-template-columns: 1fr 1fr; border: 2px solid var(--ink); }
.column-story { min-height: 325px; padding: 35px 42px 27px; display: flex; flex-direction: column; }
.podcast-story { background: #dbe0e5; }
.event-story { background: #ecc275; border-right: 2px solid var(--ink); }
.story-meta { margin: 0; font-size: 18px; font-weight: 850; }
.column-story h2 { margin: 13px 0 0; font-size: 71px; letter-spacing: -.075em; line-height: 1; }
.column-story > p:not(.story-meta) { margin: 20px 0 25px; font-size: 21px; line-height: 1.75; }
.column-story > a { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--rule); font-size: 20px; font-weight: 900; }

.podcast-feature { width: min(1230px, calc(100% - 80px)); min-height: 820px; margin: 0 auto; display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 92px; padding: 120px 0 160px; }
.section-label { color: var(--tomato); }
.feature-copy h2 > span { color: var(--cobalt); direction: ltr; display: inline-block; }
.feature-text { max-width: 480px; color: #514b43; }
.underlined-link { width: fit-content; display: inline-flex; align-items: center; gap: 10px; margin-top: 28px; padding-bottom: 7px; border-bottom: 2px solid var(--orange); font-size: 20px; font-weight: 850; }
.feature-media { position: relative; min-height: 615px; }
.podcast-frame { position: absolute; top: 0; right: 32px; width: 84%; transform: rotate(2deg); }
.vintage-player { position: absolute; z-index: 2; right: 0; bottom: 0; width: 88%; padding: 22px 23px 19px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 7px 8px 0 var(--mustard); }
.player-cap { display: flex; justify-content: space-between; font-size: 17px; font-weight: 800; }
.player-body { margin-top: 20px; display: grid; grid-template-columns: 52px 1fr; align-items: center; gap: 14px; }
.player-body button { width: 52px; height: 52px; display: grid; place-items: center; border: 0; border-radius: 50%; background: var(--orange); color: var(--paper-light); cursor: pointer; }
.player-body small { color: var(--tomato); font-size: 17px; font-weight: 900; }
.player-body h3 { margin: 7px 0 0; font-size: 27px; line-height: 1.27; }
.recording-wave { height: 76px; margin: 14px 0; display: flex; align-items: center; gap: 4px; direction: ltr; }
.recording-wave i { flex: 1; max-width: 6px; background: var(--cobalt); }
.recording-wave i:nth-child(3n) { background: var(--orange); }
.recording-wave i:nth-child(5n) { background: var(--olive); }
.player-next { padding-top: 14px; border-top: 1px solid var(--rule); font-size: 18px; }

.event-poster { min-height: 780px; padding: 113px max(6vw, 48px) 110px; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 63px; background: var(--tomato); color: var(--paper-light); }
.poster-label { color: #ffe299; }
.event-poster-copy h2 > span { color: #ffe299; }
.poster-lead { color: rgba(255,255,255,.91); }
.event-ticket { width: fit-content; min-height: 55px; margin-top: 27px; padding: 10px 16px; display: flex; align-items: center; gap: 16px; border-block: 1px dashed rgba(255,255,255,.77); font-size: 19px; }
.event-ticket b { color: #ffe299; font-size: 26px; }
.poster-features { margin: 26px 0 30px; display: flex; flex-wrap: wrap; gap: 10px; }
.poster-features > span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.53); font-size: 18px; font-weight: 750; }
.poster-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; }
.event-detail-button { background: var(--mustard); color: var(--ink); }
.cream-button { background: var(--paper-light); color: var(--ink); }
.poster-art { position: relative; }
.event-frame { transform: rotate(2deg); }
.event-sticker { position: absolute; right: -13px; bottom: -24px; width: 125px; height: 125px; display: grid; place-items: center; border: 2px dashed var(--ink); border-radius: 50%; background: var(--mustard); color: var(--ink); text-align: center; font-size: 20px; font-weight: 900; transform: rotate(-8deg); }

.editorial-belief { padding: 138px max(10vw, 55px) 115px; background: var(--cobalt); color: var(--paper-light); text-align: center; }
.belief-label { color: #ffe299; }
.editorial-belief blockquote { max-width: 1120px; margin: 0 auto; font-size: clamp(46px, 5vw, 73px); line-height: 1.23; letter-spacing: -.065em; font-weight: 850; }
.editorial-belief blockquote > span { color: #ffb496; }
.belief-columns { max-width: 1080px; margin: 59px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid rgba(255,255,255,.42); }
.belief-columns p { margin: 0; padding: 25px 13px; font-size: 20px; line-height: 1.8; }
.belief-columns p + p { border-right: 1px solid rgba(255,255,255,.42); }
.belief-columns strong { color: #ffe299; font-size: 22px; }

.about-column { min-height: 630px; padding: 115px max(10vw, 60px); display: grid; grid-template-columns: 1.13fr .87fr; align-items: center; gap: 88px; }
.about-copy h2 { margin: 0; font-size: clamp(59px, 6vw, 89px); letter-spacing: -.08em; line-height: 1.05; }
.about-copy .about-lead { font-size: 23px !important; font-weight: 700; }
.pull-quote { padding: 48px 30px; border: 3px double var(--ink); background: #ead39f; text-align: center; transform: rotate(-3deg); }
.pull-quote > span { display: block; font-size: clamp(42px, 4.6vw, 64px); font-weight: 800; letter-spacing: -.06em; }
.pull-quote > strong { display: block; color: var(--tomato); font-size: clamp(61px, 7vw, 94px); line-height: 1; letter-spacing: -.08em; }
.pull-quote > p { margin: 18px 0 0; font-size: 19px; line-height: 1.7; }

.subscription { min-height: 570px; padding: 108px max(9vw, 60px); display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 90px; background: var(--mustard); }
.subscription-copy .section-label { color: var(--ink); }
.subscription-copy h2 > span { color: var(--cobalt); }
.subscription-form { padding: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px 14px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 8px 8px 0 var(--ink); }
.subscription-form > label { display: flex; flex-direction: column; gap: 7px; }
.subscription-form label > span,.subscription-form legend { font-size: 18px; font-weight: 900; }
.subscription-form input[type="text"],.subscription-form input[type="email"],.subscription-form input[type="tel"] { height: 54px; padding: 0 12px; border: 1px solid var(--ink); background: var(--paper); outline: none; font-size: 19px; }
.subscription-form fieldset { grid-column: 1/-1; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 15px; border: 0; }
.subscription-form legend { float: right; margin-left: 15px; }
.subscription-form fieldset label { display: flex; align-items: center; gap: 6px; font-size: 18px; }
.subscription-form input[type="checkbox"] { accent-color: var(--orange); }
.subscription-form button,.subscription-form > small { grid-column: 1/-1; }
.subscription-form > small { text-align: center; font-size: 17px; }
.updates-form > .updates-phone,.updates-form > .whatsapp-consent { grid-column: 1/-1; }
.updates-form > .bali-signup-success { grid-column: 1/-1; }
.updates-form > .whatsapp-consent { padding: 11px 12px; display: flex; flex-direction: row; align-items: flex-start; gap: 9px; border: 1px dashed rgba(34,32,28,.52); background: rgba(215,168,59,.13); line-height: 1.45; }
.updates-form > .whatsapp-consent input { flex: 0 0 auto; margin-top: 4px; accent-color: var(--cobalt); }
.updates-form > .whatsapp-consent span { font-weight: 750; }

.retro-footer { padding: 75px max(7vw, 40px) 31px; background: var(--ink); color: var(--paper-light); text-align: center; }
.retro-footer > p { margin: 24px 0 32px; font-size: 19px; }
.retro-footer nav { display: flex; justify-content: center; flex-wrap: wrap; gap: 27px; font-size: 19px; font-weight: 800; }
.retro-footer nav > ul { margin: 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 27px; list-style: none; }
.retro-footer nav li { margin: 0; padding: 0; }
.retro-footer .footer-social { margin-top: 28px; color: var(--mustard); }
.retro-footer > div { margin-top: 54px; padding-top: 19px; display: flex; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.27); font-size: 17px; }

a:focus-visible,button:focus-visible,input:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }

/* Internal magazine pages: one editorial family, four distinct experiences. */
.inner-container { width: min(1230px, calc(100% - 84px)); margin-inline: auto; }
.masthead nav .nav-active,.masthead nav .current-menu-item > a,.masthead nav .current_page_item > a,.masthead nav .current-menu-ancestor > a { color: var(--tomato); border-bottom: 2px solid var(--orange); padding-bottom: 5px; }
.inner-site h1,.inner-site h2 { letter-spacing: -.075em; }
.inner-lead { max-width: 570px; margin: 25px 0 0; font-size: 22px; line-height: 1.9; }
.inner-section-rule { min-height: 61px; padding: 12px max(8vw, 38px); display: flex; justify-content: space-between; align-items: center; border-block: 2px solid var(--ink); font-size: 19px; font-weight: 850; }

/* Author portraits on the homepage and About page. */
.home-about-portrait { position: relative; width: min(430px, 100%); margin-inline: auto; }
.author-frame { padding: 10px; transform: rotate(-2deg); }
.author-frame::before { content: ""; position: absolute; top: -12px; right: 17%; z-index: 2; width: 95px; height: 27px; background: rgba(215,168,59,.63); transform: rotate(4deg); }
.author-frame img { aspect-ratio: 4 / 4.7; object-fit: cover; object-position: center 32%; }
.home-about-portrait > span { position: absolute; right: -21px; bottom: 17px; padding: 13px 17px; background: var(--mustard); transform: rotate(4deg); font-size: 25px; line-height: 1.18; font-weight: 850; }
.home-about-portrait > span strong { color: var(--tomato); }

/* About: editorial cover, narrative spread, and values. */
.about-page-hero { min-height: 690px; padding-block: 88px 84px; display: grid; grid-template-columns: 1.02fr .85fr; align-items: center; gap: 100px; }
.about-page-copy h1,.podcast-page-hero h1,.contact-hero h1 { margin: 0; font-size: clamp(60px, 6vw, 93px); line-height: 1.08; font-weight: 950; }
.about-page-copy h1 > span,.contact-hero h1 > span { color: var(--tomato); }
.author-tags { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 9px; }
.author-tags span { padding: 7px 11px; border: 1px solid var(--ink); font-size: 18px; font-weight: 800; }
.about-page-portrait { position: relative; width: min(410px, 100%); justify-self: end; }
.portrait-stamp { position: absolute; left: -22px; top: 35px; padding: 12px 15px; background: var(--mustard); font-size: 19px; line-height: 1.4; font-weight: 850; transform: rotate(-4deg); }
.portrait-caption { display: block; margin-top: 20px; font-size: 17px; font-weight: 750; }
.about-story { min-height: 440px; padding-block: 98px 105px; display: grid; grid-template-columns: .62fr 1.38fr; align-items: start; gap: 95px; }
.story-opening { position: relative; padding: 22px 20px; border: 2px solid var(--ink); background: var(--mustard); transform: rotate(-2deg); }
.story-drop { position: absolute; top: -22px; left: 18px; color: var(--tomato); font-size: 91px; line-height: 1; font-weight: 950; }
.story-opening h2 { margin: 0; font-size: 62px; line-height: 1.03; }
.story-opening h2 span { color: var(--tomato); }
.story-opening > p { margin: 13px 0 0; font-size: 20px; line-height: 1.65; }
.story-columns { column-count: 2; column-gap: 35px; }
.story-columns p { margin: 0 0 20px; font-size: 20px; line-height: 1.85; break-inside: avoid; }
.about-principles { padding-block: 100px; background: var(--cobalt); color: var(--paper-light); }
.about-principles .section-label { color: var(--mustard); }
.principle-grid { margin-top: 38px; display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid rgba(255,255,255,.55); }
.principle-grid article { padding: 30px 26px 35px; }
.principle-grid article + article { border-right: 1px solid rgba(255,255,255,.55); }
.principle-grid article > span { color: var(--mustard); font-size: 21px; }
.principle-grid h3 { margin: 21px 0 10px; font-size: 34px; letter-spacing: -.05em; }
.principle-grid p { margin: 0; font-size: 19px; line-height: 1.8; }
.inner-cta { min-height: 210px; display: flex; align-items: center; justify-content: center; gap: 30px; padding: 48px 30px; }
.inner-cta > p { margin: 0; font-size: 22px; font-weight: 700; }

/* Contact: a paper postcard and a real-looking editorial form. */
.contact-hero { min-height: 445px; padding-block: 85px 63px; display: grid; grid-template-columns: 1.08fr .72fr; align-items: center; gap: 90px; }
.contact-postcard { position: relative; min-height: 265px; padding: 28px 29px; border: 2px solid var(--ink); background: var(--mustard); transform: rotate(-3deg); }
.contact-postcard > span { display: block; font-size: 19px; }
.contact-postcard > strong { display: block; margin-top: 10px; font-size: 47px; line-height: 1.05; letter-spacing: -.07em; }
.contact-postage-stamp { position: absolute; left: 17px; top: 14px; width: 88px; height: 88px; object-fit: contain; transform: rotate(-8deg); filter: drop-shadow(2px 3px 1px rgba(34,32,28,.22)); }
.contact-postcard > p { margin: 15px 0 0; font-size: 18px; line-height: 1.7; }
.contact-content { min-width: 0; padding-block: 36px 115px; display: grid; grid-template-columns: .74fr 1.26fr; align-items: start; gap: 85px; }
.contact-detail-card { padding: 19px 0; border-bottom: 1px solid rgba(34,32,28,.43); }
.contact-detail-card > span { display: block; color: var(--tomato); font-size: 17px; font-weight: 900; }
.contact-detail-card > a,.contact-detail-card > strong { display: block; margin-top: 8px; font-size: 23px; font-weight: 850; }
.contact-detail-card > p { margin: 9px 0 0; font-size: 19px; line-height: 1.8; }
.contact-social-links { margin-top: 12px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.contact-social-links > ul { grid-column: 1 / -1; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; list-style: none; }
.contact-social-links > ul > li { margin: 0; padding: 0; }
.contact-social-links > a,.contact-social-links > ul > li > a { display: block; padding: 8px 10px; border: 1px solid rgba(34,32,28,.48); background: var(--paper-light); text-align: center; font-size: 18px; font-weight: 800; }
.contact-social-links > a:hover,.contact-social-links > ul > li > a:hover { background: var(--ink); color: var(--paper-light); }
.contact-form { min-width: 0; padding: 32px; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 19px 17px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 8px 8px 0 var(--ink); }
.contact-form > h2 { grid-column: 1 / -1; margin: 0 0 7px; font-size: 46px; }
.contact-form > label { min-width: 0; display: grid; gap: 8px; }
.contact-form label > span { font-size: 18px; font-weight: 850; }
.contact-form input,.contact-form select,.contact-form textarea { width: 100%; max-width: 100%; min-width: 0; min-height: 51px; padding: 11px 13px; border: 1px solid var(--ink); border-radius: 0; background: var(--paper); color: var(--ink); font: inherit; }
.contact-form select { direction: rtl; text-align: right; text-align-last: right; overflow: hidden; text-overflow: ellipsis; }
.contact-form select option { direction: rtl; background: var(--paper-light); color: var(--ink); text-align: right; }
.contact-form textarea { direction: rtl; overflow-x: hidden; overflow-wrap: anywhere; white-space: pre-wrap; resize: vertical; text-align: right; }
.contact-topic-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.contact-topic-field > legend { padding: 0; font-size: 18px; font-weight: 850; }
.contact-topic-hint { margin: 7px 0 12px; color: rgba(34,32,28,.74); font-size: 18px; }
.contact-topic-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.contact-topic-option { position: relative; min-width: 0; }
.contact-topic-option > input { position: absolute; width: 1px; height: 1px; min-height: 0; margin: -1px; padding: 0; overflow: hidden; border: 0; opacity: 0; clip-path: inset(50%); white-space: nowrap; }
.contact-topic-option > span { min-height: 49px; padding: 10px 12px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--ink); background: var(--paper); color: var(--ink); text-align: center; line-height: 1.35; cursor: pointer; transition: background .18s ease,color .18s ease,border-color .18s ease; }
.contact-topic-option:hover > span { border-color: var(--orange); }
.contact-topic-option > input:checked + span { border-color: var(--cobalt); background: var(--cobalt); color: var(--paper-light); }
.contact-topic-option > input:focus-visible + span { outline: 3px solid var(--orange); outline-offset: 3px; }
.form-full { min-width: 0; grid-column: 1 / -1; }
.contact-form > small { text-align: center; }

/* Podcast: illustrated cover and independently editable episode cards. */
.podcast-page-hero { min-height: 620px; padding-block: 88px 83px; display: grid; grid-template-columns: 1.05fr .85fr; align-items: center; gap: 88px; }
.podcast-page-hero h1 > span { color: var(--cobalt); }
.platform-follow { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 12px; }
.platform-button { min-height: 52px; padding: 12px 15px; display: inline-flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 850; }
.youtube-button { background: var(--tomato); color: var(--paper-light); }
.spotify-button { background: var(--olive); color: var(--paper-light); }
.podcast-cover-art { position: relative; width: min(410px, 100%); justify-self: end; }
.podcast-cover-art .collage-frame { transform: rotate(2deg); }
.podcast-cover-note { position: absolute; right: -17px; bottom: 14px; padding: 12px 15px; background: var(--mustard); font-size: 19px; font-weight: 850; transform: rotate(-4deg); }
.episode-library { padding-block: 74px 115px; }
.episode-filters { display: flex; flex-wrap: wrap; gap: 11px; }
.episode-filters span,.episode-filters a,.episode-filters button { padding: 8px 13px; border: 1px solid var(--ink); background: transparent; color: var(--ink); font-size: 18px; font-weight: 750; text-decoration: none; }
.episode-filters a,.episode-filters button { cursor: pointer; }
.episode-filters a:hover,.episode-filters button:hover { background: rgba(34,32,28,.08); }
.episode-filters .filter-active { background: var(--ink); color: var(--paper-light); }
.episode-filters .filter-active:hover { background: var(--ink); }
.episode-grid { margin-top: 34px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 21px; }
.episode-card { min-height: 345px; padding: 22px; display: flex; flex-direction: column; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 5px 5px 0 rgba(34,32,28,.12); }
.episode-blue { border-top: 5px solid var(--cobalt); }
.episode-orange { border-top: 5px solid var(--orange); }
.episode-olive { border-top: 5px solid var(--olive); }
.episode-pink { border-top: 5px solid var(--rose); }
.episode-mustard { border-top: 5px solid var(--mustard); }
.episode-top { display: flex; justify-content: space-between; font-size: 17px; font-weight: 800; }
.episode-tag { margin: 23px 0 8px; color: var(--tomato); font-size: 17px; font-weight: 850; }
.episode-card h2 { min-height: 72px; margin: 0; font-size: 31px; line-height: 1.23; }
.episode-card h2 a { color: inherit; text-decoration: none; }
.episode-card h2 a:hover { color: var(--tomato); }
.episode-description { margin: 13px 0 20px; font-size: 18px; line-height: 1.75; }
.episode-read-more { width: 100%; margin: 0 0 16px; direction: rtl; text-align: left; }
.episode-read-more a { display: inline-flex; align-items: center; gap: 5px; color: var(--ink); font-size: 17px; font-weight: 850; text-decoration: underline; text-underline-offset: .18em; }
.episode-read-more a:hover { color: var(--tomato); }
.episode-platforms { margin-top: auto; padding-top: 13px; display: flex; justify-content: space-between; border-top: 1px solid rgba(34,32,28,.42); }
.episode-platforms a { display: inline-flex; align-items: center; gap: 5px; font-size: 17px; font-weight: 850; }
.episode-platforms svg { width: 17px; height: 17px; }
.episode-pagination { margin-top: 45px; display: flex; flex-wrap: wrap; gap: 10px; }
.episode-pagination .page-numbers { padding: 9px 13px; border: 1px solid var(--ink); background: var(--paper-light); font-size: 18px; font-weight: 800; }
.episode-pagination .current,.episode-pagination a:hover { background: var(--ink); color: var(--paper-light); }
.podcast-comments-section { padding-block: 90px 105px; border-top: 2px solid var(--ink); background: var(--paper-light); }
.podcast-comments-inner { display: grid; grid-template-columns: .78fr 1.22fr; align-items: start; gap: 72px; }
.podcast-comments-header { position: sticky; top: 28px; }
.podcast-comments-header h2 { margin: 8px 0 18px; font-size: 52px; line-height: 1.07; }
.podcast-comments-header > p:last-child { margin: 0; font-size: 20px; line-height: 1.75; }
.podcast-comments { min-width: 0; }
.podcast-comments-title { margin: 0 0 25px; font-size: 29px; }
.podcast-comment-list { margin: 0 0 38px; padding: 0; list-style: none; }
.podcast-comment-list .comment { margin: 0 0 18px; padding: 22px; border: 1px solid var(--ink); background: var(--paper); box-shadow: 4px 4px 0 rgba(34,32,28,.12); }
.podcast-comment-list .children { margin: 18px 24px 0 0; padding: 0; list-style: none; }
.podcast-comment-list .children .comment { box-shadow: none; }
.podcast-comment-list .comment-body { font-size: 18px; line-height: 1.7; }
.podcast-comment-list .comment-meta { margin-bottom: 12px; }
.podcast-comment-list .comment-author { display: flex; align-items: center; gap: 10px; font-weight: 850; }
.podcast-comment-list .avatar { width: 42px; height: 42px; border-radius: 50%; }
.podcast-comment-list .comment-metadata { margin: 5px 52px 0 0; font-size: 15px; }
.podcast-comment-list .reply a,.podcast-comment-navigation a { font-weight: 800; text-decoration: underline; text-underline-offset: .17em; }
.podcast-comment-navigation { margin: 0 0 30px; display: flex; justify-content: space-between; gap: 20px; }
.podcast-comments .comment-reply-title { margin: 0 0 8px; font-size: 31px; }
.podcast-comments .comment-notes,.podcast-comments .logged-in-as,.podcast-comments .must-log-in { font-size: 17px; line-height: 1.6; }
.podcast-comments .comment-form { padding: 25px; border: 1px solid var(--ink); background: var(--mustard); box-shadow: 6px 6px 0 var(--ink); }
.podcast-comments .comment-form p { margin: 0 0 16px; }
.podcast-comments .comment-form label { display: block; margin-bottom: 6px; font-size: 17px; font-weight: 850; }
.podcast-comments .comment-form input[type="text"],.podcast-comments .comment-form input[type="email"],.podcast-comments .comment-form input[type="url"],.podcast-comments .comment-form textarea { width: 100%; padding: 11px 12px; border: 1px solid var(--ink); background: var(--paper-light); color: var(--ink); font: inherit; }
.podcast-comments .comment-form textarea { min-height: 145px; resize: vertical; }
.podcast-comments .form-submit { margin-bottom: 0; }
.podcast-comments .submit { min-height: 48px; padding: 9px 20px; border: 1px solid var(--ink); background: var(--cobalt); color: var(--paper-light); font: inherit; font-size: 18px; font-weight: 850; cursor: pointer; }
.podcast-comments .submit:hover { background: var(--tomato); }
.podcast-comments-closed { padding: 19px; border: 1px dashed var(--ink); font-size: 18px; }

/* Ask the podcast: editorial question desk and private intake form. */
.ask-page-hero { min-height: 650px; padding-block: 90px 105px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 85px; }
.ask-page-copy h1 { margin: 0; font-size: clamp(76px, 8vw, 122px); line-height: .92; font-weight: 950; }
.ask-page-copy h1 span { color: var(--tomato); }
.ask-page-copy .inner-lead { max-width: 690px; }
.ask-page-art { position: relative; width: min(430px, 92%); justify-self: center; }
.ask-question-card { position: relative; aspect-ratio: 1 / .84; display: grid; place-items: center; border: 2px solid var(--ink); background: var(--mustard); box-shadow: 11px 12px 0 var(--ink); transform: rotate(2.3deg); overflow: hidden; }
.ask-question-card::before { content: ''; position: absolute; inset: 18px; border: 1px dashed rgba(34,32,28,.58); }
.ask-question-mark { position: relative; z-index: 1; color: var(--cobalt); font-size: clamp(150px, 18vw, 245px); line-height: .8; font-weight: 950; transform: rotate(-7deg); }
.ask-microphone { position: absolute; right: 25%; bottom: 13%; z-index: 2; width: 48px; height: 80px; border: 5px solid var(--ink); border-radius: 28px; background: var(--tomato); color: transparent; transform: rotate(17deg); }
.ask-microphone::before { content: ''; position: absolute; right: -16px; bottom: -10px; width: 68px; height: 43px; border: 5px solid var(--ink); border-top: 0; border-radius: 0 0 40px 40px; }
.ask-microphone::after { content: ''; position: absolute; right: 18px; bottom: -31px; width: 5px; height: 31px; background: var(--ink); box-shadow: -17px 29px 0 1px var(--ink),17px 29px 0 1px var(--ink); }
.ask-hero-sticker { position: absolute; left: -35px; bottom: -42px; z-index: 3; padding: 16px 22px; border: 1px solid var(--ink); background: var(--paper-light); font-size: 21px; line-height: 1.25; font-weight: 900; text-align: center; transform: rotate(-5deg); box-shadow: 5px 5px 0 rgba(34,32,28,.18); }
.ask-steps-section { padding-block: 83px 95px; border-block: 2px solid var(--ink); background: var(--cobalt); color: var(--paper-light); }
.ask-steps-section .section-label { color: var(--mustard); }
.ask-steps-grid { margin-top: 29px; display: grid; grid-template-columns: repeat(3, 1fr); }
.ask-steps-grid article { padding: 10px 31px 12px; }
.ask-steps-grid article + article { border-right: 1px solid rgba(255,255,255,.5); }
.ask-steps-grid article > span { color: var(--mustard); font-size: 34px; font-weight: 950; }
.ask-steps-grid h2 { margin: 12px 0 10px; font-size: 31px; }
.ask-steps-grid p { margin: 0; font-size: 19px; line-height: 1.7; }
.ask-form-section { padding-block: 105px 120px; }
.ask-form-layout { display: grid; grid-template-columns: .7fr 1.3fr; align-items: start; gap: 80px; }
.ask-form-intro { position: sticky; top: 28px; }
.ask-form-intro h2 { margin: 8px 0 19px; font-size: 67px; line-height: .98; }
.ask-form-intro > p:not(.section-label) { font-size: 21px; line-height: 1.8; }
.ask-safety-note { margin-top: 30px; padding: 19px 21px; border: 1px solid var(--ink); background: var(--mustard); font-size: 17px; line-height: 1.65; box-shadow: 5px 5px 0 var(--ink); }
.ask-form-card { min-width: 0; }
.ask-form { padding: 31px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px 17px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 9px 9px 0 var(--tomato); }
.ask-form > label:not(.ask-checkbox) { display: grid; align-content: start; gap: 7px; }
.ask-form label > span,.ask-form legend { font-size: 18px; font-weight: 850; }
.ask-form label > small { font-size: 15px; line-height: 1.45; }
.ask-form input[type="text"],.ask-form input[type="email"],.ask-form textarea { width: 100%; min-width: 0; padding: 12px 13px; border: 1px solid var(--ink); background: var(--paper); color: var(--ink); font: inherit; font-size: 18px; }
.ask-form input[type="text"],.ask-form input[type="email"] { min-height: 52px; }
.ask-form textarea { resize: vertical; line-height: 1.55; }
.ask-choice-field { margin: 2px 0 0; padding: 19px 20px; display: grid; gap: 11px; border: 1px solid var(--ink); }
.ask-choice-field legend { padding-inline: 7px; }
.ask-choice-field label,.ask-checkbox { display: flex; align-items: flex-start; gap: 9px; font-size: 17px; line-height: 1.55; }
.ask-choice-field input,.ask-checkbox input { flex: 0 0 auto; margin-top: .32em; accent-color: var(--cobalt); }
.ask-consent { padding: 17px 18px; border: 1px dashed var(--ink); background: rgba(216,168,52,.2); }
.ask-form .retro-button { justify-self: start; }
.ask-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.ask-success-message,.ask-error-message { padding: 31px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 8px 8px 0 var(--olive); }
.ask-success-message h3 { margin: 0 0 13px; font-size: 43px; }
.ask-success-message p { margin: 0; font-size: 20px; line-height: 1.75; }
.ask-error-message { margin: 0 0 22px; background: #fde5de; box-shadow: 6px 6px 0 var(--tomato); font-size: 18px; line-height: 1.6; }
.podcast-newsletter { min-height: 395px; padding: 78px max(8vw, 40px); display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 75px; background: var(--cobalt); color: var(--paper-light); }
.podcast-newsletter .section-label { color: var(--mustard); }
.podcast-newsletter h2 { margin: 0; font-size: 61px; line-height: 1.04; }
.podcast-newsletter h2 span { color: var(--mustard); }
.podcast-newsletter-copy > p:last-child { max-width: 480px; margin: 20px 0 0; font-size: 20px; line-height: 1.8; }
.podcast-inline-form { padding: 26px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px 13px; border: 1px solid var(--ink); background: var(--paper-light); color: var(--ink); box-shadow: 7px 7px 0 var(--mustard); }
.podcast-inline-form > label { display: grid; gap: 7px; }
.podcast-inline-form label > span { font-size: 18px; font-weight: 850; }
.podcast-inline-form input[type="text"],.podcast-inline-form input[type="email"],.podcast-inline-form input[type="tel"] { height: 50px; min-width: 0; padding: 0 11px; border: 1px solid var(--ink); background: var(--paper); font-size: 18px; }
.podcast-inline-form .updates-phone,.podcast-inline-form .whatsapp-consent { grid-column: 1/-1; }
.podcast-inline-form > button,.podcast-inline-form > small,.podcast-inline-form > .bali-signup-success { grid-column: 1/-1; }
.podcast-inline-form > small { text-align: center; font-size: 17px; }

/* Blog: clipped-paper cards and a roomy magazine article. */
.blog-page-hero { min-height: 520px; padding-block: 92px 78px; display: flex; flex-direction: column; justify-content: center; }
.blog-page-hero h1 { margin: 0; max-width: 900px; font-size: clamp(64px, 7vw, 104px); line-height: 1.03; font-weight: 950; }
.blog-page-hero h1 > span { display: inline-block; padding: 0 .12em .08em; background: var(--ink); color: var(--paper-light); transform: rotate(-1deg); }
.blog-index { padding-bottom: 122px; }
.blog-index .inner-section-rule { margin-inline: calc((100vw - min(1230px, calc(100vw - 84px))) / -2); }
.blog-taxonomy-panel { position: relative; margin-top: 37px; padding: 27px 29px 25px; display: grid; grid-template-columns: 1.05fr .95fr; gap: 31px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 7px 7px 0 var(--mustard); }
.blog-filter-group { min-width: 0; }
.blog-filter-group > p { margin: 0 0 13px; color: var(--tomato); font-size: 19px; font-weight: 900; }
.blog-category-filters,.blog-tag-cloud { display: flex; flex-wrap: wrap; gap: 9px; }
.blog-tag-cloud button,.blog-tag-cloud a,.blog-card-tags span,.blog-card-tags a,.blog-post-tags span { padding: 7px 10px; border: 1px solid rgba(34,32,28,.58); background: var(--paper); color: var(--ink); font-size: 17px; font-weight: 750; text-decoration: none; }
.blog-tag-cloud button { cursor: pointer; }
.blog-tag-cloud button:hover,.blog-tag-cloud a:hover,.blog-tag-cloud .tag-active { border-color: var(--cobalt); background: var(--cobalt); color: var(--paper-light); }
.blog-category-filters small { display: inline-block; margin-inline-start: 5px; font-size: .78em; font-weight: 700; }
.blog-clear-filters { position: absolute; left: 15px; top: 11px; color: var(--tomato); font-size: 17px; font-weight: 850; text-decoration: underline; text-underline-offset: 4px; }
.blog-filter-summary { margin: 31px 0 -30px; color: #5a544b; font-size: 18px; font-weight: 800; }
.blog-card-tags { margin-top: 17px; display: flex; flex-wrap: wrap; gap: 7px; }
.blog-card-tags span,.blog-card-tags a { padding-block: 5px; font-size: 16px; }
.blog-grid { margin-top: 58px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
.blog-card { min-width: 0; display: grid; grid-template-columns: .82fr 1.18fr; border: 1px solid var(--ink); border-top: 7px solid var(--orange); background: var(--paper-light); box-shadow: 7px 7px 0 rgba(34,32,28,.11); }
.blog-card:nth-child(3n + 2) { border-top-color: var(--cobalt); }
.blog-card:nth-child(3n) { border-top-color: var(--olive); }
.blog-card-featured { grid-column: 1 / -1; grid-template-columns: 1.07fr .93fr; }
.blog-card-image { min-height: 255px; overflow: hidden; background: var(--paper-dark); }
.blog-card-featured .blog-card-image { min-height: 390px; }
.blog-card-image img { height: 100%; object-fit: cover; filter: saturate(.88) contrast(1.02); transition: transform .35s ease; }
.blog-card:hover .blog-card-image img { transform: scale(1.025); }
.blog-card-copy { min-width: 0; padding: 27px 29px 29px; display: flex; flex-direction: column; align-items: flex-start; }
.blog-card-meta { margin: 0; display: flex; flex-wrap: wrap; gap: 8px 13px; align-items: center; color: #5a544b; font-size: 17px; font-weight: 750; }
.blog-card-meta > span { padding: 4px 7px; background: var(--mustard); color: var(--ink); transform: rotate(-1deg); }
.blog-card-meta small { font-size: inherit; }
.blog-card h2 { margin: 20px 0 12px; font-size: 39px; line-height: 1.08; }
.blog-card-featured h2 { font-size: 57px; }
.blog-card h2 a:hover { color: var(--tomato); }
.blog-card-copy > p:not(.blog-card-meta) { margin: 0; font-size: 20px; line-height: 1.75; }
.blog-card .underlined-link { margin-top: auto; padding-top: 23px; }
.blog-pagination,.blog-post-navigation { margin-top: 48px; display: flex; flex-wrap: wrap; gap: 10px; }
.blog-pagination .page-numbers,.blog-post-navigation > a { padding: 9px 13px; border: 1px solid var(--ink); background: var(--paper-light); font-size: 18px; font-weight: 800; }
.blog-pagination .current,.blog-pagination a:hover,.blog-post-navigation > a:hover { background: var(--ink); color: var(--paper-light); }
.blog-article-header { padding-block: 95px 54px; }
.blog-article-header h1 { max-width: 960px; margin: 0; font-size: clamp(67px, 7vw, 109px); line-height: 1.02; font-weight: 950; }
.blog-article-header .inner-lead { max-width: 760px; font-size: 26px; }
.podcast-post-tools { margin-top: 28px; }
.podcast-post-meta { display: flex; flex-wrap: wrap; gap: 10px; }
.podcast-post-meta span { padding: 7px 11px; border: 1px solid var(--ink); background: var(--mustard); font-size: 18px; font-weight: 850; }
.podcast-post-tools .platform-follow { margin-top: 15px; }
.blog-post-tags { margin-top: 25px; display: flex; flex-wrap: wrap; gap: 8px; }
.blog-post-tags span { background: var(--mustard); font-size: 18px; }
.blog-article-image { padding: 11px; background: var(--paper-light); box-shadow: 9px 10px 0 var(--mustard); transform: rotate(-.45deg); }
.blog-article-image img { max-height: 680px; object-fit: cover; }
.blog-article-layout { padding-block: 86px 125px; display: grid; grid-template-columns: .28fr .72fr; gap: 78px; align-items: start; }
.blog-article-sidebar { position: sticky; top: 25px; min-width: 0; display: grid; gap: 24px; }
.blog-author-card { padding: 24px; border: 1px solid var(--ink); background: var(--mustard); transform: rotate(-2deg); }
.blog-author-card > span { display: block; font-size: 18px; font-weight: 750; }
.blog-author-card > strong { display: block; margin-top: 8px; font-size: 42px; line-height: .95; }
.blog-author-card > a { display: inline-block; margin-top: 25px; padding-bottom: 5px; border-bottom: 1px solid var(--ink); font-size: 18px; font-weight: 850; }
.blog-sidebar-widgets { min-width: 0; display: grid; gap: 18px; }
.blog-sidebar-widget { min-width: 0; margin: 0; padding: 21px 20px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 5px 5px 0 rgba(34,32,28,.11); overflow-wrap: anywhere; }
.blog-sidebar-widget-title,.blog-sidebar-widget > h2,.blog-sidebar-widget > h3,.blog-sidebar-widget .wp-block-heading { margin: 0 0 14px; color: var(--tomato); font-size: 24px; line-height: 1.15; }
.blog-sidebar-widget ul { margin: 0; padding: 0; list-style: none; }
.blog-sidebar-widget li { margin: 0; padding: 8px 0; font-size: 18px; line-height: 1.45; }
.blog-sidebar-widget li + li { border-top: 1px solid rgba(34,32,28,.18); }
.blog-sidebar-widget .sub-menu,.blog-sidebar-widget .children { padding-right: 14px; }
.blog-sidebar-widget .wp-block-navigation__container { width: 100%; display: grid; gap: 0; }
.blog-sidebar-widget a { color: var(--ink); text-decoration: none; font-weight: 750; }
.blog-sidebar-widget a:hover { color: var(--tomato); }
.blog-sidebar-widget .tagcloud,.blog-sidebar-widget .wp-block-tag-cloud { display: flex; flex-wrap: wrap; gap: 7px; }
.blog-sidebar-widget .tagcloud a,.blog-sidebar-widget .wp-block-tag-cloud a { margin: 0; padding: 5px 8px; border: 1px solid rgba(34,32,28,.48); background: var(--paper); font-size: 16px !important; }
.blog-sidebar-widget select { width: 100%; min-height: 45px; padding: 7px 9px; border: 1px solid var(--ink); border-radius: 0; background: var(--paper); color: var(--ink); font: inherit; }
.blog-article-body { width: 100%; min-width: 0; max-width: 760px; }
.blog-editor-content { width: 100%; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.blog-editor-content > * { min-width: 0; max-width: 100%; }
.blog-editor-content :is(figure,.wp-block-embed,.wp-block-video,.wp-block-image,.wp-block-group,.wp-block-columns,.wp-block-column) { min-width: 0; max-width: 100%; }
.blog-editor-content :is(figure,.wp-block-embed,.wp-block-video,.wp-block-image) { margin-inline: 0; }
.blog-editor-content :is(iframe,video,embed,object) { display: block; max-width: 100% !important; }
.blog-editor-content :is(.wp-block-embed__wrapper,.wp-block-video) { width: 100%; max-width: 100%; overflow: hidden; }
.blog-editor-content iframe:is([src*="youtube.com"],[src*="youtube-nocookie.com"],[src*="youtu.be"]) { width: 100% !important; max-width: 100% !important; border: 0; }
.blog-editor-content > iframe:is([src*="youtube.com"],[src*="youtube-nocookie.com"],[src*="youtu.be"]),.blog-editor-content > p > iframe:is([src*="youtube.com"],[src*="youtube-nocookie.com"],[src*="youtu.be"]) { height: auto !important; aspect-ratio: 16 / 9; }
.blog-editor-content :is(p,li,blockquote,figcaption,td,th) { min-width: 0; overflow-wrap: anywhere; }
.blog-article-body > p,.blog-editor-content > p { margin: 0 0 29px; font-size: 25px; line-height: 1.95; }
.blog-article-body h2 { margin: 60px 0 20px; font-size: 47px; line-height: 1.1; }
.blog-article-body h3 { margin: 42px 0 17px; font-size: 37px; line-height: 1.15; }
.blog-article-body ul,.blog-article-body ol { margin: 0 0 30px; padding-right: 1.25em; font-size: 23px; line-height: 1.85; }
.blog-article-body > p:first-child::first-letter,.blog-editor-content > p:first-child::first-letter { float: right; margin: .08em 0 0 .09em; color: var(--tomato); font-size: 4.4em; line-height: .72; font-weight: 950; }
.blog-article-body blockquote { margin: 58px 0 0; padding: 31px 34px; border-block: 2px solid var(--ink); color: var(--cobalt); font-size: 37px; line-height: 1.35; font-weight: 850; }
.single-post-comments { margin-top: 70px; padding-top: 44px; border-top: 2px solid var(--ink); }
.single-post-comments-header { margin-bottom: 28px; }
.single-post-comments-header h2 { margin: 7px 0 0; font-size: 43px; line-height: 1.1; }
.single-post-comments .podcast-comments .comment-form { background: var(--paper-light); box-shadow: 6px 6px 0 var(--mustard); }
.single-post-comments .podcast-comment-list .comment { background: var(--paper-light); }

/* Event: bold poster, sensory maze, program, and tickets. */
.event-page-hero { padding: 95px max(7vw, 42px); background: var(--tomato); color: var(--paper-light); }
.event-page-hero-inner { max-width: 1250px; margin-inline: auto; display: grid; grid-template-columns: .95fr 1.05fr; align-items: center; gap: 90px; }
.event-page-kicker { margin: 0 0 22px; color: #ffe299; font-size: 19px; font-weight: 900; }
.event-page-hero h1 { margin: 0; font-size: clamp(67px, 6.4vw, 99px); line-height: 1.04; }
.event-page-hero h1 > span { color: #ffe299; }
.event-page-lead { max-width: 490px; margin: 23px 0 0; font-size: 21px; line-height: 1.85; }
.event-page-ticket { margin: 23px 0 27px; padding-block: 12px; display: flex; align-items: center; gap: 15px; border-block: 1px dashed rgba(255,255,255,.75); font-size: 18px; }
.event-page-ticket > strong { color: #ffe299; font-size: 25px; }
.event-hero-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: 11px; }
.event-date-jump-button { border: 1px solid rgba(255,255,255,.76); background: transparent; color: var(--paper-light); }
.event-date-jump-button:hover { background: var(--paper-light); color: var(--ink); }
.event-page-art { position: relative; }
.event-page-art .collage-frame { transform: rotate(2deg); }
.event-page-art > span { position: absolute; bottom: -18px; right: -15px; padding: 16px 17px; background: var(--mustard); color: var(--ink); font-size: 20px; line-height: 1.35; font-weight: 850; transform: rotate(-5deg); }
.experience-intro { padding-block: 105px 33px; display: grid; grid-template-columns: 1fr .9fr; align-items: center; gap: 100px; }
.experience-intro h2,.ticket-section h2 { margin: 0; font-size: 71px; line-height: 1.05; }
.experience-intro h2 span,.ticket-section h2 span { color: var(--tomato); }
.experience-intro > p { font-size: 21px; line-height: 1.9; }
.experience-art { position: relative; margin-top: 12px; margin-bottom: 62px; }
.experience-art .collage-frame { transform: rotate(-.7deg); }
.experience-art img { aspect-ratio: 3 / 2; object-fit: cover; }
.experience-art figcaption { position: absolute; left: 26px; bottom: -24px; padding: 13px 17px; background: var(--mustard); color: var(--ink); font-size: 21px; font-weight: 850; transform: rotate(2deg); }
.experience-cards { padding-block: 32px 110px; display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 2px solid var(--ink); }
.experience-cards article { padding: 26px 24px; border: 1px solid var(--ink); background: var(--paper-light); }
.experience-cards article + article { border-right: 0; }
.experience-cards article > span { color: var(--tomato); font-size: 20px; font-weight: 900; }
.experience-cards h3 { margin: 19px 0 9px; font-size: 31px; letter-spacing: -.05em; }
.experience-cards p { margin: 0; font-size: 18px; line-height: 1.8; }
.event-schedule { padding-block: 105px; background: var(--cobalt); color: var(--paper-light); }
.event-schedule .section-label { color: var(--mustard); }
.event-schedule h2 { margin: 0 0 46px; font-size: 67px; line-height: 1.08; }
.schedule-list { max-width: 1080px; border-top: 1px solid rgba(255,255,255,.52); }
.schedule-item { padding: 22px 0; display: grid; grid-template-columns: 108px 1fr; gap: 24px; border-bottom: 1px solid rgba(255,255,255,.52); }
.schedule-item > strong { color: var(--mustard); font-size: 33px; }
.schedule-item-copy > h3 { margin: 0; font-size: 28px; }
.schedule-item-copy > p { margin: 7px 0 0; font-size: 18px; line-height: 1.7; }
.event-lecture-list { margin-top: 26px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.event-lecture-demo-note { grid-column: 1 / -1; margin: 0 0 3px; padding: 11px 14px; border: 1px dashed rgba(255,255,255,.7); color: var(--paper-light); font-size: 17px; line-height: 1.55; }
.event-lecture-demo-note strong { color: var(--mustard); }
.event-lecture-card { padding: 17px; display: grid; grid-template-columns: 94px 1fr; gap: 18px; border: 1px solid var(--ink); border-right: 7px solid var(--mustard); background: var(--paper-light); color: var(--ink); box-shadow: 5px 5px 0 rgba(0,0,0,.18); }
.event-lecture-card-no-image { grid-template-columns: 1fr; }
.event-lecture-portrait { width: 94px; height: 112px; object-fit: cover; object-position: center; border: 1px solid var(--ink); filter: saturate(.78) contrast(1.06); }
.event-lecture-copy { min-width: 0; }
.event-lecture-copy time { display: inline-block; padding: 3px 8px; background: var(--cobalt); color: var(--paper-light); font-size: 17px; font-weight: 900; transform: rotate(-1deg); }
.event-lecture-copy h4 { margin: 8px 0 0; font-size: 29px; line-height: 1.08; }
.event-lecture-copy .event-lecture-speaker-line { margin: 5px 0 0; color: var(--tomato); font-size: 17px; line-height: 1.45; font-weight: 850; }
.event-lecture-copy .event-lecture-content { margin: 12px 0 0; font-size: 18px; line-height: 1.68; }
.ticket-section { padding-block: 105px 110px; display: grid; grid-template-columns: .8fr .85fr; align-items: center; justify-content: space-between; gap: 90px; }
.ticket-section > div:first-child > p:last-child { max-width: 425px; margin-top: 21px; font-size: 20px; line-height: 1.8; }
.ticket-card { padding: 28px; display: grid; gap: 10px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 8px 8px 0 var(--mustard); text-align: center; }
.ticket-card > p { margin: 0; color: var(--tomato); font-size: 20px; font-weight: 850; }
.ticket-card > strong { font-size: 79px; line-height: 1; }
.ticket-card > span { font-size: 19px; }
.ticket-card > a { margin-top: 10px; }
.ticket-card > small { font-size: 16px; }
.ticket-card-purchase { overflow: hidden; padding-top: 0; }
.ticket-sale-banner { margin-inline: -28px; padding: 14px 18px; display: flex; justify-content: space-between; gap: 12px; background: var(--cobalt); color: var(--paper-light); font-size: 18px; font-weight: 850; }
.ticket-sale-banner > span:last-child { color: var(--mustard); }
.ticket-card-purchase > p { margin-top: 9px; }
.event-payment-methods { margin-top: 5px; padding-block: 14px; display: grid; gap: 10px; border-block: 1px dashed rgba(34,32,28,.42); }
.event-payment-methods > span { font-size: 18px; font-weight: 750; }
.event-payment-badges { display: flex; justify-content: center; flex-wrap: wrap; gap: 7px; }
.event-payment-badges > a,.event-payment-badges > span { padding: 7px 10px; border: 1px solid rgba(34,32,28,.55); background: var(--paper); font-size: 17px; font-weight: 750; text-decoration: none; }
.event-payment-badges > a:hover { border-color: var(--cobalt); background: var(--cobalt); color: var(--paper-light); }
.event-payment-badges > span[aria-disabled="true"] { opacity: .62; }
.event-purchase-actions { margin-top: 4px; display: grid; gap: 9px; }
.event-purchase-actions .retro-button { width: 100%; justify-content: center; }
.payment-secondary-button { border: 1px solid var(--ink); background: transparent; color: var(--ink); }
.payment-secondary-button:hover { background: var(--ink); color: var(--paper-light); }
.ticket-card .event-payment-note { line-height: 1.5; }
.event-notify-form { margin-top: 5px; padding-top: 14px; border-top: 1px dashed rgba(34,32,28,.42); text-align: right; }
.event-notify-form > h3 { margin: 0 0 12px; color: var(--cobalt); font-size: 28px; text-align: center; }
.event-update-form,.event-date-form { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.event-update-form > label:not(.whatsapp-consent),.event-date-form > label:not(.whatsapp-consent) { min-width: 0; display: grid; gap: 6px; }
.event-update-form label > span,.event-date-form label > span { font-size: 18px; font-weight: 800; }
.event-update-form input[type="text"],.event-update-form input[type="email"],.event-update-form input[type="tel"],.event-date-form input[type="text"],.event-date-form input[type="email"],.event-date-form input[type="tel"] { width: 100%; min-width: 0; height: 49px; padding: 0 10px; border: 1px solid var(--ink); background: var(--paper); font: inherit; }
.event-update-form > button,.event-update-form > small,.event-date-form > button,.event-date-form > small { grid-column: 1/-1; }
.event-update-form > small,.event-date-form > small { text-align: center; line-height: 1.45; }
.event-next-date { padding-block: 100px; background: var(--mustard); border-top: 2px solid var(--ink); }
.event-next-date-inner { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 85px; }
.event-next-date h2 { margin: 0; font-size: 67px; line-height: 1.05; }
.event-next-date h2 > span { color: var(--cobalt); }
.event-next-date-inner > div > p:last-child { max-width: 510px; font-size: 21px; line-height: 1.8; }
.event-date-form { padding: 27px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 8px 8px 0 var(--cobalt); color: var(--ink); }
.event-access-note { min-height: 100px; padding: 27px 30px; display: flex; align-items: center; justify-content: center; gap: 20px; border-top: 2px solid var(--ink); font-size: 19px; }

@media (max-width: 1120px) {
  .inner-container { width: calc(100% - 70px); }
  .about-page-hero,.podcast-page-hero,.contact-hero { gap: 48px; }
  .ask-page-hero { gap: 52px; }
  .ask-form-layout { gap: 52px; }
  .about-story { gap: 55px; }
  .episode-grid { grid-template-columns: 1fr 1fr; }
  .event-page-hero-inner { gap: 45px; }
  .experience-intro,.ticket-section { gap: 55px; }
}

@media (max-width: 760px) {
  .inner-container { width: calc(100% - 36px); }
  .inner-section-rule { min-height: 54px; padding-inline: 16px; gap: 12px; font-size: 16px; }
  .inner-section-rule > span:last-child { text-align: left; }
  .about-page-hero,.podcast-page-hero,.contact-hero { min-height: 0; padding-block: 65px 80px; grid-template-columns: 1fr; gap: 50px; }
  .ask-page-hero { min-height: 0; padding-block: 65px 90px; grid-template-columns: 1fr; gap: 65px; }
  .ask-page-copy h1 { font-size: clamp(68px, 20vw, 94px); }
  .ask-page-art { width: min(350px, 88%); }
  .ask-hero-sticker { left: -15px; bottom: -38px; font-size: 18px; }
  .ask-steps-section { padding-block: 70px 76px; }
  .ask-steps-grid { grid-template-columns: 1fr; }
  .ask-steps-grid article { padding: 25px 9px; }
  .ask-steps-grid article + article { border-right: 0; border-top: 1px solid rgba(255,255,255,.5); }
  .ask-form-section { padding-block: 77px 90px; }
  .ask-form-layout { grid-template-columns: 1fr; gap: 38px; }
  .ask-form-intro { position: static; }
  .ask-form-intro h2 { font-size: 55px; }
  .ask-form { grid-template-columns: 1fr; padding: 23px 18px; box-shadow: 6px 7px 0 var(--tomato); }
  .ask-form .form-full { grid-column: 1; }
  .about-page-copy h1,.podcast-page-hero h1,.contact-hero h1 { font-size: clamp(51px, 12vw, 73px); }
  .inner-lead { font-size: 20px; }
  .about-page-portrait,.podcast-cover-art { justify-self: center; width: min(375px, 92%); }
  .home-about-portrait { width: min(375px, 88%); }
  .portrait-stamp { left: -10px; font-size: 17px; }
  .about-story { padding-block: 79px 88px; grid-template-columns: 1fr; gap: 48px; }
  .story-opening { max-width: 330px; }
  .story-columns { column-count: 1; }
  .about-principles { padding-block: 83px; }
  .principle-grid { grid-template-columns: 1fr; }
  .principle-grid article + article { border-right: 0; border-top: 1px solid rgba(255,255,255,.55); }
  .inner-cta { min-height: 0; flex-direction: column; text-align: center; }
  .contact-content { padding-bottom: 93px; grid-template-columns: 1fr; gap: 38px; }
  .contact-postcard { max-width: 370px; }
  .contact-form { grid-template-columns: 1fr; padding: 24px 19px; }
  .contact-topic-options { grid-template-columns: 1fr; }
  .form-full,.contact-form > h2 { grid-column: 1; }
  .episode-library { padding-block: 55px 91px; }
  .episode-grid { grid-template-columns: 1fr; }
  .episode-card { min-height: 305px; }
  .podcast-comments-section { padding-block: 70px 80px; }
  .podcast-comments-inner { grid-template-columns: 1fr; gap: 38px; }
  .podcast-comments-header { position: static; }
  .podcast-comments-header h2 { font-size: 43px; }
  .podcast-comment-list .children { margin-right: 10px; }
  .podcast-comments .comment-form { padding: 21px 17px; }
  .podcast-newsletter { padding: 75px 24px; grid-template-columns: 1fr; gap: 18px; }
  .podcast-newsletter h2 { font-size: 51px; }
  .podcast-newsletter-copy > p:last-child { margin-block: 13px 20px; }
  .podcast-inline-form { grid-template-columns: 1fr; padding: 21px 17px; }
  .podcast-inline-form > button,.podcast-inline-form > small,.podcast-inline-form > .bali-signup-success { grid-column: 1; }
  .blog-page-hero { min-height: 0; padding-block: 74px 69px; }
  .blog-page-hero h1 { font-size: clamp(56px, 13vw, 76px); }
  .blog-index { padding-bottom: 92px; }
  .blog-index .inner-section-rule { margin-inline: -18px; }
  .blog-taxonomy-panel { margin-top: 30px; padding: 24px 19px 22px; grid-template-columns: 1fr; gap: 24px; }
  .blog-clear-filters { position: static; width: fit-content; }
  .blog-filter-summary { margin: 27px 0 -18px; }
  .blog-grid { margin-top: 39px; grid-template-columns: 1fr; gap: 25px; }
  .blog-card,.blog-card-featured { grid-column: auto; grid-template-columns: 1fr; }
  .blog-card-image,.blog-card-featured .blog-card-image { min-height: 245px; }
  .blog-card-featured h2 { font-size: 43px; }
  .blog-article-header { padding-block: 76px 44px; }
  .blog-article-header h1 { font-size: clamp(57px, 14vw, 81px); }
  .blog-article-header .inner-lead { font-size: 22px; }
  .blog-article-image { width: calc(100% - 30px); }
  .blog-article-layout { padding-block: 68px 93px; grid-template-columns: 1fr; gap: 45px; }
  .blog-article-sidebar { position: static; width: 100%; max-width: none; }
  .blog-author-card { max-width: 285px; }
  .blog-article-body > p,.blog-editor-content > p { font-size: 22px; }
  .blog-article-body h2 { font-size: 41px; }
  .blog-article-body blockquote { padding-inline: 10px; font-size: 32px; }
  .single-post-comments { margin-top: 55px; padding-top: 36px; }
  .single-post-comments-header h2 { font-size: 37px; }
  .event-page-hero { padding: 79px 20px 93px; }
  .event-page-hero-inner { grid-template-columns: 1fr; gap: 57px; }
  .event-page-hero h1 { font-size: 67px; }
  .event-page-ticket { flex-wrap: wrap; }
  .event-hero-actions { flex-direction: column; }
  .event-hero-actions .retro-button { width: 100%; }
  .experience-intro { padding-top: 85px; grid-template-columns: 1fr; gap: 19px; }
  .experience-art { width: calc(100% - 28px); margin-bottom: 66px; }
  .experience-art figcaption { left: 9px; right: 15px; bottom: -34px; text-align: center; }
  .experience-intro h2,.ticket-section h2 { font-size: 56px; }
  .experience-cards { padding-bottom: 85px; grid-template-columns: 1fr; }
  .experience-cards article + article { border-right: 1px solid var(--ink); border-top: 0; }
  .event-schedule { padding-block: 83px; }
  .event-schedule h2 { font-size: 53px; }
  .schedule-item { grid-template-columns: 74px 1fr; gap: 14px; }
  .schedule-item > strong { font-size: 26px; }
  .event-lecture-list { grid-template-columns: 1fr; }
  .event-lecture-card { padding: 13px; grid-template-columns: 72px 1fr; gap: 12px; border-right-width: 5px; }
  .event-lecture-card-no-image { grid-template-columns: 1fr; }
  .event-lecture-portrait { width: 72px; height: 88px; }
  .event-lecture-copy h4 { font-size: 25px; }
  .event-lecture-copy .event-lecture-content { font-size: 17px; }
  .ticket-section { padding-block: 85px 93px; grid-template-columns: 1fr; gap: 42px; }
  .event-update-form,.event-date-form,.event-next-date-inner { grid-template-columns: 1fr; }
  .event-next-date { padding-block: 80px; }
  .event-next-date-inner { gap: 38px; }
  .event-next-date h2 { font-size: 53px; }
  .event-access-note { flex-direction: column; gap: 9px; text-align: center; }
}

@media (max-width: 1120px) {
  .masthead { grid-template-columns: auto auto 1fr; gap: 22px; }
  .masthead nav { justify-self: end; }
  .masthead nav > ul { gap: 18px; }
  .masthead-cta { display: none; }
  .hero-cover { gap: 30px; }
  .cover-copy h1,.feature-copy h2,.event-poster-copy h2,.subscription-copy h2 { font-size: clamp(57px, 5.5vw, 75px); }
  .podcast-feature { gap: 49px; }
  .event-poster { gap: 38px; padding-inline: 42px; }
  .about-column,.subscription { gap: 53px; padding-inline: 48px; }
}

@media (max-width: 760px) {
  .paper-topline { min-height: 54px; justify-content: center; gap: 12px; padding-inline: 13px; flex-wrap: wrap; text-align: center; font-size: 16px; }
  .paper-topline > span:nth-child(2) { display: none; }
  .masthead { width: calc(100% - 34px); min-height: 96px; grid-template-columns: auto 1fr; gap: 12px; }
  .brand-mark > span { font-size: 21px; }
  .brand-mark > strong { font-size: 38px; }
  .masthead-note { justify-self: end; padding-right: 11px; font-size: 16px; }
  .masthead nav { display: none; }
  .hero-cover { width: calc(100% - 36px); min-height: 0; padding: 65px 0 75px; grid-template-columns: 1fr; gap: 46px; }
  .overline { flex-wrap: wrap; gap: 8px; font-size: 17px; }
  .cover-copy h1,.feature-copy h2,.event-poster-copy h2,.subscription-copy h2 { font-size: clamp(51px, 12vw, 74px); }
  .cover-punchline { font-size: 43px; }
  .cover-intro,.feature-text,.poster-lead,.about-copy > p:not(.section-label) { font-size: 20px; }
  .cover-actions { flex-direction: column; align-items: stretch; }
  .cover-collage { min-height: 315px; }
  .paper-label { font-size: 17px; }
  .edition-strip { gap: 10px; padding-inline: 13px; font-size: 16px; }
  .edition-strip > span:last-child,.edition-strip > i:nth-last-of-type(1) { display: none; }
  .two-columns { width: calc(100% - 32px); margin: 64px auto 15px; grid-template-columns: 1fr; }
  .column-story { min-height: 300px; padding: 31px 25px 24px; }
  .column-story h2 { font-size: 64px; }
  .event-story { border-right: 0; border-top: 2px solid var(--ink); }
  .podcast-feature { width: calc(100% - 36px); min-height: 0; padding: 103px 0 128px; grid-template-columns: 1fr; gap: 55px; }
  .feature-media { min-height: 485px; }
  .podcast-frame { right: 16px; width: 91%; }
  .vintage-player { right: 0; width: 96%; padding: 18px; }
  .player-body h3 { font-size: 23px; }
  .event-poster { min-height: 0; padding: 91px 20px 115px; grid-template-columns: 1fr; gap: 63px; }
  .poster-actions { align-items: stretch; }
  .poster-actions .retro-button { flex: 1 1 190px; }
  .event-ticket { gap: 10px; font-size: 17px; }
  .event-ticket b { font-size: 21px; }
  .event-sticker { width: 106px; height: 106px; right: -8px; bottom: -24px; font-size: 18px; }
  .editorial-belief { padding: 110px 21px 96px; }
  .editorial-belief blockquote { font-size: 47px; }
  .belief-columns { grid-template-columns: 1fr; margin-top: 42px; }
  .belief-columns p + p { border-right: 0; border-top: 1px solid rgba(255,255,255,.42); }
  .about-column { min-height: 0; padding: 93px 24px; grid-template-columns: 1fr; gap: 55px; }
  .pull-quote { padding: 38px 19px; }
  .subscription { min-height: 0; padding: 88px 17px; grid-template-columns: 1fr; gap: 47px; }
  .subscription-form { grid-template-columns: 1fr; padding: 24px 18px; }
  .subscription-form > label,.subscription-form fieldset,.subscription-form button,.subscription-form > small { grid-column: 1; }
  .subscription-form legend { width: 100%; margin: 0 0 4px; }
  .retro-footer { padding-inline: 22px; }
  .retro-footer nav { gap: 15px; }
  .retro-footer nav > ul { gap: 15px; }
}

/* Headlines keep their rhythm without the cramped display spacing of the first draft. */
.retro-site h1,.retro-site h2,.retro-site h3,.retro-site blockquote { letter-spacing: -.015em; }

/* WooCommerce shop: native products and checkout inside the retro magazine. */
.shop-page-hero { min-height: 610px; padding-block: 91px 88px; display: grid; grid-template-columns: 1.2fr .62fr; align-items: center; gap: 92px; }
.shop-page-hero h1 { margin: 0; font-size: clamp(64px,6.4vw,96px); line-height: 1.02; font-weight: 950; }
.shop-page-hero h1 span { color: var(--tomato); }
.shop-hero-note { position: relative; padding: 31px 28px 34px; border: 2px solid var(--ink); background: var(--mustard); box-shadow: 9px 10px 0 var(--ink); transform: rotate(-2deg); }
.shop-hero-note::before { content: ""; position: absolute; top: -15px; right: 24%; width: 88px; height: 27px; background: rgba(244,236,217,.63); transform: rotate(5deg); }
.shop-hero-note > span { font-size: 17px; font-weight: 900; }
.shop-hero-note > strong { display: block; margin-top: 16px; color: var(--cobalt); font-size: 43px; line-height: 1.06; }
.shop-hero-note > p { margin: 18px 0 0; font-size: 19px; line-height: 1.75; }
.shop-rule { background: var(--paper-dark); }
.bali-woocommerce-content { padding-block: 84px 115px; }
.bali-woocommerce-content .woocommerce-result-count { margin: 10px 0 31px; font-size: 18px; font-weight: 800; }
.bali-woocommerce-content .woocommerce-ordering { margin: 0 0 31px; }
.bali-woocommerce-content select { min-height: 49px; padding: 7px 12px; border: 1px solid var(--ink); border-radius: 0; background: var(--paper-light); color: var(--ink); font: inherit; }
.woocommerce ul.products,.woocommerce-page ul.products { clear: both; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 27px; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product { width: auto !important; margin: 0 !important; padding: 0 0 25px; float: none !important; display: flex; flex-direction: column; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 7px 8px 0 rgba(34,32,28,.13); }
.woocommerce ul.products li.product a img { aspect-ratio: 4/4.7; margin: 0 0 23px; object-fit: cover; border-bottom: 1px solid var(--ink); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 23px; color: var(--ink); font-size: 31px; line-height: 1.16; }
.woocommerce ul.products li.product .price { margin: 12px 23px 0; color: var(--cobalt); font-size: 28px; font-weight: 900; }
.woocommerce ul.products li.product .button { width: calc(100% - 46px); min-height: 52px; margin: 22px 23px 0; padding: 12px 15px; display: inline-flex; justify-content: center; align-items: center; border: 0; border-radius: 0; background: var(--orange); color: var(--paper-light); font-size: 18px; font-weight: 900; }
.woocommerce ul.products li.product .button:hover { background: var(--ink); color: var(--paper-light); }
.bali-product-delivery { margin: 11px 23px 0; color: var(--tomato); font-size: 16px; font-weight: 850; }
.woocommerce span.onsale { z-index: 3; min-width: 0; min-height: 0; top: 15px; right: 15px; left: auto; margin: 0; padding: 7px 10px; border-radius: 0; background: var(--tomato); color: var(--paper-light); font-size: 16px; line-height: 1.3; transform: rotate(3deg); }
.woocommerce nav.woocommerce-pagination { margin-top: 48px; }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; justify-content: center; gap: 7px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span { min-width: 44px; min-height: 44px; padding: 10px; border: 1px solid var(--ink); background: var(--paper-light); color: var(--ink); font-size: 18px; }
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--ink); color: var(--paper-light); }
.shop-payment-strip { margin-top: 48px; padding: 24px 27px; display: flex; justify-content: space-between; align-items: center; gap: 25px; border-block: 2px solid var(--ink); }
.shop-payment-strip p { margin: 0; font-size: 19px; }
.shop-payment-strip > div,.product-payment-box > div { display: flex; flex-wrap: wrap; gap: 7px; }
.shop-payment-strip span,.product-payment-box span { padding: 7px 10px; border: 1px solid var(--ink); background: var(--paper-light); font-size: 17px; font-weight: 850; }
.shop-plugin-notice { max-width: 870px; margin: 20px auto; padding: 42px; border: 2px solid var(--ink); background: var(--mustard); box-shadow: 9px 10px 0 var(--ink); text-align: center; }
.shop-plugin-notice > span { color: var(--tomato); font-weight: 900; }
.shop-plugin-notice h2 { margin: 12px 0 0; font-size: 49px; line-height: 1.08; }
.shop-plugin-notice p { margin: 18px 0 0; font-size: 20px; line-height: 1.75; }

.product-breadcrumb { padding-top: 34px; display: flex; gap: 9px; font-size: 17px; font-weight: 800; }
.product-breadcrumb .woocommerce-breadcrumb { margin: 0; }
.product-breadcrumb a { color: var(--tomato); border-bottom: 1px solid currentColor; }
.bali-single-product { padding-top: 58px; }
.woocommerce div.product { display: grid; grid-template-columns: .88fr 1.12fr; align-items: start; gap: 72px 88px; }
.woocommerce div.product div.images,.woocommerce div.product div.summary { width: auto; margin: 0; float: none; }
.woocommerce div.product div.images { padding: 10px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 11px 13px 0 var(--mustard); transform: rotate(-1.2deg); }
.woocommerce div.product div.images img { background: var(--paper); }
.woocommerce div.product div.summary { padding-top: 11px; }
.woocommerce div.product .product_title { margin: 0; font-size: clamp(59px,5.5vw,84px); line-height: 1.03; font-weight: 950; }
.woocommerce div.product p.price,.woocommerce div.product span.price { margin: 24px 0 0; color: var(--cobalt); font-size: 47px; font-weight: 900; }
.woocommerce div.product .woocommerce-product-details__short-description { margin-top: 20px; font-size: 21px; line-height: 1.83; }
.woocommerce div.product form.cart { margin: 26px 0 0; display: flex; gap: 12px; }
.woocommerce .quantity .qty { width: 84px; min-height: 56px; border: 1px solid var(--ink); border-radius: 0; background: var(--paper-light); color: var(--ink); font-size: 19px; }
.woocommerce div.product form.cart .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button { min-height: 55px; padding: 12px 20px; border: 0; border-radius: 0; background: var(--orange); color: var(--paper-light); font-size: 18px; font-weight: 900; }
.woocommerce div.product form.cart .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover,.woocommerce input.button:hover { background: var(--ink); color: var(--paper-light); }
.product-payment-box { margin-top: 20px; padding: 18px 19px; border: 1px dashed rgba(34,32,28,.59); background: rgba(215,168,59,.15); }
.product-payment-box > p { margin: 0 0 10px; font-size: 17px; font-weight: 900; }
.product-payment-box small { display: block; margin-top: 11px; font-size: 15px; line-height: 1.55; }
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells { grid-column: 1/-1; }
.woocommerce div.product .woocommerce-tabs { margin-top: 18px; padding-top: 65px; border-top: 2px solid var(--ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs { margin: 0 0 30px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 1px solid var(--ink); border-radius: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 9px 15px; font-size: 18px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--ink); color: var(--paper-light); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 840px; font-size: 20px; line-height: 1.85; }
.woocommerce div.product .woocommerce-tabs .panel h2,.woocommerce div.product .related > h2,.woocommerce div.product .upsells > h2 { font-size: 45px; }
.woocommerce-message,.woocommerce-info,.woocommerce-error { border-top: 0; border-right: 6px solid var(--cobalt); background: var(--paper-light); color: var(--ink); }
.woocommerce-message::before,.woocommerce-info::before { color: var(--cobalt); }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select { min-height: 52px; padding: 10px 12px; border: 1px solid var(--ink); border-radius: 0; background: var(--paper-light); color: var(--ink); font: inherit; }
.woocommerce form.checkout,.woocommerce-cart-form,.cart-collaterals { font-size: 18px; }
.woocommerce-checkout #payment { border-radius: 0; background: var(--paper-dark); }
.woocommerce-checkout #payment ul.payment_methods { border-bottom: 1px solid var(--ink); }
.woocommerce-checkout #payment div.payment_box { border-radius: 0; background: var(--paper-light); color: var(--ink); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--paper-light); }
.woocommerce table.shop_table { border: 1px solid var(--ink); border-radius: 0; background: var(--paper-light); }
.woocommerce table.shop_table th,.woocommerce table.shop_table td { padding: 14px 12px; }
.bali-commerce-page { width: min(1230px,calc(100% - 84px)); margin-inline: auto; padding-block: 72px 110px; }
.bali-commerce-page > article > h1 { margin: 0 0 42px; font-size: clamp(58px,6vw,88px); }

@media (max-width: 1120px) {
  .masthead nav { gap: 18px; font-size: 18px; }
  .masthead nav > ul { gap: 18px; }
  .shop-page-hero { gap: 48px; }
  .woocommerce div.product { gap: 55px; }
}

@media (max-width: 760px) {
  .shop-page-hero { min-height: 0; padding-block: 75px 82px; grid-template-columns: 1fr; gap: 52px; }
  .shop-page-hero h1 { font-size: clamp(57px,15vw,76px); }
  .shop-hero-note { width: calc(100% - 14px); }
  .shop-rule { padding-inline: 18px; }
  .shop-rule span:last-child { display: none; }
  .bali-woocommerce-content { padding-block: 65px 91px; }
  .woocommerce ul.products,.woocommerce-page ul.products { grid-template-columns: 1fr; gap: 28px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 35px; }
  .shop-payment-strip { margin-top: 39px; padding-inline: 0; flex-direction: column; align-items: flex-start; }
  .product-breadcrumb { padding-top: 24px; }
  .bali-single-product { padding-top: 44px; }
  .woocommerce div.product { grid-template-columns: 1fr; gap: 68px; }
  .woocommerce div.product .product_title { font-size: clamp(57px,14vw,76px); }
  .woocommerce div.product .woocommerce-tabs { padding-top: 49px; }
  .woocommerce div.product .related > h2,.woocommerce div.product .upsells > h2 { font-size: 40px; }
  .bali-commerce-page { width: calc(100% - 34px); padding-block: 58px 88px; }
  .woocommerce .col2-set .col-1,.woocommerce-page .col2-set .col-1,.woocommerce .col2-set .col-2,.woocommerce-page .col2-set .col-2 { width: 100%; float: none; }
}

/* Professionals workshop: a practical NOAM-model journey in three meetings. */
.workshop-hero { position: relative; padding-block: 86px 98px; background: var(--paper); color: var(--ink); }
.workshop-hero::before { content: ""; position: absolute; left: -61px; top: 39px; width: 185px; height: 185px; border-radius: 50%; background: var(--orange); opacity: .88; }
.workshop-hero::after { content: ""; position: absolute; right: 45%; bottom: -29px; width: 58px; height: 58px; border-radius: 50%; background: var(--mustard); }
.workshop-hero-inner { display: grid; grid-template-columns: .96fr 1.04fr; align-items: center; gap: 82px; }
.workshop-hero-inner { position: relative; z-index: 1; }
.workshop-kicker { margin: 0 0 18px; color: var(--tomato); font-size: 19px; font-weight: 900; }
.workshop-hero h1 { margin: 0; font-size: clamp(66px,6.1vw,94px); line-height: 1.03; letter-spacing: -.075em; }
.workshop-hero h1 span { display: inline-block; margin-top: 7px; padding: .03em .12em .08em; background: var(--cobalt); color: var(--paper-light); }
.workshop-hero-lead { max-width: 610px; margin: 24px 0 0; color: var(--ink); font-size: 21px; line-height: 1.9; }
.workshop-meta { margin: 25px 0 27px; padding-block: 13px; display: flex; flex-wrap: wrap; gap: 8px 22px; border-block: 1px dashed rgba(34,32,28,.55); font-size: 18px; font-weight: 800; }
.workshop-meta span { display: inline-flex; align-items: center; gap: 8px; }
.workshop-meta span::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--orange); }
.workshop-primary-button { background: var(--orange); color: var(--paper-light); }
.workshop-hero-art { position: relative; margin: 0; }
.workshop-hero-art .collage-frame { transform: rotate(2deg); }
.workshop-hero-art img { min-height: 465px; object-fit: cover; }
.workshop-hero-art figcaption { position: absolute; left: -23px; bottom: -25px; padding: 16px 19px; border: 1px solid var(--ink); background: var(--orange); color: var(--paper-light); font-size: 22px; line-height: 1.25; font-weight: 950; transform: rotate(-6deg); }

.workshop-problem { padding-block: 106px 112px; }
.workshop-section-heading { max-width: 930px; }
.workshop-section-heading h2,.workshop-model h2,.workshop-program h2,.workshop-kit h2,.workshop-audience h2,.workshop-about h2,.workshop-faq h2,.workshop-register h2 { margin: 0; font-size: clamp(58px,5.4vw,79px); line-height: 1.05; letter-spacing: -.065em; }
.workshop-section-heading h2 span,.workshop-learn h2 span,.workshop-audience h2 span { color: var(--tomato); }
.workshop-section-heading > p:last-child { max-width: 760px; margin: 24px 0 0; font-size: 22px; line-height: 1.82; }
.workshop-problem-grid { margin-top: 54px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid var(--ink); background: var(--paper-light); }
.workshop-problem-grid article { padding: 28px 27px 31px; }
.workshop-problem-grid article + article { border-right: 1px solid var(--ink); }
.workshop-problem-grid article:nth-child(2) { background: var(--orange); color: var(--ink); }
.workshop-problem-grid article:nth-child(3) { background: var(--cobalt); color: var(--paper-light); }
.workshop-problem-grid article:nth-child(3) > span { color: var(--mustard); }
.workshop-problem-grid article:nth-child(3) h3,
.workshop-problem-grid article:nth-child(3) p { color: var(--paper-light); }
.workshop-problem-grid article > span { color: var(--tomato); font-size: 20px; font-weight: 950; }
.workshop-problem-grid h3 { margin: 17px 0 11px; font-size: 31px; line-height: 1.09; }
.workshop-problem-grid p { margin: 0; font-size: 18px; line-height: 1.72; }

.workshop-image-break { padding-block: 105px; border-block: 1px solid var(--ink); background: var(--paper-light); color: var(--ink); overflow: hidden; }
.workshop-image-break-inner { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 82px; }
.workshop-image-break figure { position: relative; margin: 0; transform: rotate(-1.5deg); }
.workshop-image-break figure img { aspect-ratio: 1.5 / 1; object-fit: cover; border: 11px solid var(--paper-light); box-shadow: 12px 12px 0 var(--orange); }
.workshop-image-tape { position: absolute; z-index: 2; top: -14px; right: 28%; width: 96px; height: 30px; background: rgba(215,168,59,.7); transform: rotate(4deg); }
.workshop-image-break blockquote { margin: 0; color: var(--ink); font-size: clamp(49px,4.8vw,70px); line-height: 1.1; letter-spacing: -.06em; font-weight: 850; }
.workshop-image-break blockquote span { display: block; margin-top: 23px; color: var(--cobalt); font-size: 23px; line-height: 1.65; letter-spacing: 0; }

.workshop-model { position: relative; padding-block: 104px 112px; background: var(--tomato); color: var(--paper-light); overflow: hidden; }
.workshop-model > .inner-container { position: relative; z-index: 1; }
.workshop-model-stamp { position: absolute; left: -62px; top: 44px; width: 205px; transform: rotate(-13deg); opacity: .42; }
.workshop-model .section-label { color: #ffe299; }
.workshop-model-intro { display: grid; grid-template-columns: 1.04fr .96fr; align-items: end; gap: 80px; }
.workshop-model h2 span { color: #ffe299; }
.workshop-model-intro > p { margin: 0; font-size: 21px; line-height: 1.84; }
.workshop-model-grid { margin-top: 55px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid rgba(255,255,255,.72); }
.workshop-model-grid article { min-height: 285px; padding: 28px; }
.workshop-model-grid article + article { border-right: 1px solid rgba(255,255,255,.72); }
.workshop-model-grid article > span { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; background: var(--paper-light); color: var(--ink); font-size: 29px; font-weight: 950; }
.workshop-model-grid h3 { margin: 20px 0 10px; font-size: 34px; }
.workshop-model-grid p { margin: 0; font-size: 18px; line-height: 1.75; }
.workshop-model blockquote { max-width: 940px; margin: 53px auto 0; padding: 30px 38px; border-block: 2px solid rgba(255,255,255,.65); color: #ffe299; font-size: clamp(29px,3vw,42px); line-height: 1.38; text-align: center; font-weight: 850; }

.workshop-learn { padding-block: 110px; display: grid; grid-template-columns: .8fr 1.2fr; align-items: start; gap: 85px; }
.workshop-learn-heading { position: sticky; top: 28px; }
.workshop-learn-heading > p:last-child { font-size: 20px; }
.workshop-learn-art { position: relative; width: 92%; margin: 37px 0 0; }
.workshop-learn-art .collage-frame { transform: rotate(1.8deg); }
.workshop-learn-art img { aspect-ratio: 1.45 / 1; object-fit: cover; }
.workshop-learn-art figcaption { position: absolute; left: -23px; bottom: -20px; padding: 12px 15px; background: var(--orange); color: var(--paper-light); font-size: 18px; font-weight: 900; transform: rotate(-4deg); }
.workshop-outcomes { margin: 0; padding: 0; border-top: 2px solid var(--ink); list-style: none; }
.workshop-outcomes li { min-height: 92px; padding: 18px 0; display: grid; grid-template-columns: 62px 1fr; align-items: center; gap: 18px; border-bottom: 1px solid var(--ink); }
.workshop-outcomes li > span { color: var(--tomato); font-size: 21px; font-weight: 950; }
.workshop-outcomes li > p { margin: 0; font-size: 22px; line-height: 1.55; font-weight: 750; }

.workshop-program { padding-block: 106px 111px; background: var(--cobalt); color: var(--paper-light); }
.workshop-program .section-label { color: var(--mustard); }
.workshop-program-header { max-width: 900px; }
.workshop-program-header > p:last-child { max-width: 730px; margin: 23px 0 0; font-size: 21px; line-height: 1.8; }
.workshop-days { margin-top: 50px; display: grid; gap: 18px; }
.workshop-days article { padding: 27px 30px; display: grid; grid-template-columns: 105px 1fr; gap: 29px; border: 1px solid var(--ink); border-right: 8px solid var(--mustard); background: var(--paper-light); color: var(--ink); box-shadow: 6px 7px 0 rgba(0,0,0,.18); }
.workshop-day-number { display: flex; flex-direction: column; align-items: center; justify-content: center; border-left: 1px dashed rgba(34,32,28,.45); }
.workshop-day-number span { color: var(--tomato); font-size: 18px; font-weight: 900; }
.workshop-day-number strong { font-size: 62px; line-height: .95; }
.workshop-days h3 { margin: 0; color: var(--cobalt); font-size: 38px; line-height: 1.1; }
.workshop-days article > div:last-child > p { margin: 8px 0 14px; font-size: 19px; line-height: 1.6; font-weight: 750; }
.workshop-days ul { margin: 0; padding-right: 22px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px 35px; font-size: 17px; line-height: 1.55; }
.workshop-days li::marker { color: var(--tomato); }
.workshop-schedule-note { margin: 29px 0 0; padding: 15px 18px; border: 1px dashed rgba(255,255,255,.7); color: var(--mustard); font-size: 18px; text-align: center; font-weight: 850; }

.workshop-kit { position: relative; padding-block: 110px; display: grid; grid-template-columns: .86fr 1.14fr; align-items: center; gap: 88px; }
.workshop-kit-stamp { position: absolute; left: -58px; top: 31px; width: 150px; transform: rotate(-10deg); }
.workshop-kit > div > p:last-child { max-width: 500px; margin: 22px 0 0; font-size: 21px; line-height: 1.8; }
.workshop-kit > ul { margin: 0; padding: 28px 31px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px 30px; border: 1px solid var(--ink); background: var(--paper-light); box-shadow: 9px 9px 0 var(--mustard); list-style: none; }
.workshop-kit > ul li { position: relative; padding-right: 24px; font-size: 19px; line-height: 1.5; font-weight: 750; }
.workshop-kit > ul li::before { content: "✓"; position: absolute; right: 0; color: var(--tomato); font-weight: 950; }

.workshop-audience { padding-block: 101px 107px; background: var(--mustard); border-block: 2px solid var(--ink); }
.workshop-audience-inner { display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: 84px; }
.workshop-audience-inner > div > p:last-child { max-width: 650px; margin: 24px 0 0; font-size: 21px; line-height: 1.8; }
.workshop-audience aside { padding: 29px 31px; border: 2px solid var(--ink); background: var(--paper-light); box-shadow: 8px 8px 0 var(--tomato); transform: rotate(-1deg); }
.workshop-audience aside h3 { margin: 0; color: var(--tomato); font-size: 36px; }
.workshop-audience aside p { margin: 14px 0 0; font-size: 19px; line-height: 1.73; }

.workshop-about { padding-block: 111px; display: grid; grid-template-columns: .72fr 1.28fr; align-items: center; gap: 89px; }
.workshop-about figure { margin: 0; }
.workshop-about .collage-frame { transform: rotate(-2deg); }
.workshop-about img { aspect-ratio: 4 / 5; object-fit: cover; }
.workshop-about strong { display: block; margin-top: 15px; color: var(--tomato); font-size: 24px; }
.workshop-about div > p:last-child { max-width: 650px; margin: 19px 0 0; font-size: 21px; line-height: 1.85; }

.workshop-faq { padding-block: 98px 108px; background: var(--paper-dark); border-top: 2px solid var(--ink); }
.workshop-faq-inner { display: grid; grid-template-columns: .72fr 1.28fr; align-items: start; gap: 80px; }
.workshop-faq-list { border-top: 2px solid var(--ink); }
.workshop-faq-list details { border-bottom: 1px solid var(--ink); }
.workshop-faq-list summary { position: relative; padding: 23px 45px 23px 0; cursor: pointer; font-size: 23px; font-weight: 850; list-style: none; }
.workshop-faq-list summary::-webkit-details-marker { display: none; }
.workshop-faq-list summary::before { content: "+"; position: absolute; right: 0; top: 19px; color: var(--tomato); font-size: 30px; }
.workshop-faq-list details[open] summary::before { content: "−"; }
.workshop-faq-list details p { margin: -5px 45px 24px 0; font-size: 18px; line-height: 1.75; }

.workshop-register { padding-block: 108px 116px; background: var(--mustard); color: var(--ink); }
.workshop-register .section-label { color: var(--ink); }
.workshop-register h2 span { color: var(--cobalt); }
.workshop-register-inner { display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 85px; }
.workshop-register-copy > p:last-of-type { max-width: 590px; margin: 23px 0 0; font-size: 21px; line-height: 1.82; }
.workshop-register-facts { margin: 26px 0 0; border-top: 1px dashed rgba(34,32,28,.58); }
.workshop-register-facts > div { padding: 11px 0; display: grid; grid-template-columns: 120px 1fr; gap: 17px; border-bottom: 1px dashed rgba(34,32,28,.58); }
.workshop-register-facts dt { color: var(--cobalt); font-weight: 900; }
.workshop-register-facts dd { margin: 0; }
.workshop-register-card { padding: 29px; border: 1px solid var(--ink); background: var(--paper-light); color: var(--ink); box-shadow: 9px 10px 0 var(--ink); text-align: center; }
.workshop-register-card > h3 { margin: 0 0 19px; color: var(--cobalt); font-size: 34px; }
.workshop-register-card > p:first-child { margin: 0; color: var(--tomato); font-size: 20px; font-weight: 850; }
.workshop-register-card > strong { display: block; margin-top: 7px; font-size: 69px; line-height: 1; }
.workshop-register-card > span { display: block; margin: 13px 0 20px; font-size: 18px; line-height: 1.55; }
.workshop-register-card > .retro-button { width: 100%; }
.workshop-register-unavailable { margin: 19px 0 0; padding: 13px; border: 1px dashed var(--ink); font-weight: 800; }
.workshop-interest-form { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; text-align: right; }
.workshop-interest-form > label:not(.whatsapp-consent) { display: grid; gap: 6px; }
.workshop-interest-form label > span { font-size: 17px; font-weight: 800; }
.workshop-interest-form input[type="text"],.workshop-interest-form input[type="email"],.workshop-interest-form input[type="tel"] { width: 100%; min-width: 0; height: 51px; padding: 0 11px; border: 1px solid var(--ink); background: var(--paper); }
.workshop-interest-form .whatsapp-consent,.workshop-interest-form > button,.workshop-interest-form > small,.workshop-interest-form > .bali-signup-success { grid-column: 1/-1; }
.workshop-interest-form > button { width: 100%; }
.workshop-interest-form > small { text-align: center; line-height: 1.5; }

@media (max-width: 1120px) {
  .workshop-hero-inner,.workshop-image-break-inner,.workshop-model-intro,.workshop-learn,.workshop-kit,.workshop-audience-inner,.workshop-about,.workshop-faq-inner,.workshop-register-inner { gap: 49px; }
  .workshop-days ul { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .workshop-hero { padding-block: 70px 91px; }
  .workshop-hero::before { width: 120px; height: 120px; left: -68px; }
  .workshop-hero-inner,.workshop-image-break-inner,.workshop-model-intro,.workshop-learn,.workshop-kit,.workshop-audience-inner,.workshop-about,.workshop-faq-inner,.workshop-register-inner { grid-template-columns: 1fr; }
  .workshop-hero-inner { gap: 55px; }
  .workshop-hero h1 { font-size: clamp(58px,16vw,75px); }
  .workshop-hero-art { width: calc(100% - 17px); }
  .workshop-hero-art img { min-height: 340px; }
  .workshop-hero-art figcaption { left: -9px; }
  .workshop-section-heading h2,.workshop-model h2,.workshop-program h2,.workshop-kit h2,.workshop-audience h2,.workshop-about h2,.workshop-faq h2,.workshop-register h2 { font-size: clamp(49px,13vw,64px); }
  .workshop-problem { padding-block: 80px 86px; }
  .workshop-problem-grid,.workshop-model-grid { grid-template-columns: 1fr; }
  .workshop-problem-grid article + article,.workshop-model-grid article + article { border-right: 0; border-top: 1px solid var(--ink); }
  .workshop-image-break { padding-block: 78px 88px; }
  .workshop-image-break blockquote { font-size: clamp(45px,12vw,61px); }
  .workshop-model-grid article + article { border-top-color: rgba(255,255,255,.72); }
  .workshop-model-grid article { min-height: 0; }
  .workshop-model { padding-block: 80px 87px; }
  .workshop-model-stamp,.workshop-kit-stamp { display: none; }
  .workshop-model blockquote { padding-inline: 8px; }
  .workshop-learn { padding-block: 84px; }
  .workshop-learn-heading { position: static; }
  .workshop-outcomes li { grid-template-columns: 47px 1fr; gap: 9px; }
  .workshop-program { padding-block: 82px 87px; }
  .workshop-days article { padding: 22px 18px; grid-template-columns: 63px 1fr; gap: 17px; border-right-width: 5px; }
  .workshop-day-number strong { font-size: 47px; }
  .workshop-days h3 { font-size: 31px; }
  .workshop-days ul { padding-right: 18px; }
  .workshop-kit { padding-block: 84px; }
  .workshop-kit > ul { grid-template-columns: 1fr; }
  .workshop-audience { padding-block: 80px 88px; }
  .workshop-about { padding-block: 85px; }
  .workshop-about figure { width: min(365px,91%); justify-self: center; }
  .workshop-faq { padding-block: 78px 88px; }
  .workshop-faq-list summary { padding-right: 38px; font-size: 21px; }
  .workshop-faq-list details p { margin-right: 38px; }
  .workshop-register { padding-block: 82px 93px; }
  .workshop-register-card { padding: 23px 18px; box-shadow: 7px 8px 0 var(--ink); }
  .workshop-register-card > strong { font-size: 57px; }
  .workshop-interest-form { grid-template-columns: 1fr; }
  .workshop-interest-form .whatsapp-consent,.workshop-interest-form > button,.workshop-interest-form > small,.workshop-interest-form > .bali-signup-success { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { transition-duration: .01ms !important; }
}
