/* ps-ritual.css: built by tools/build-css.sh from inc/assets-map.php. Do not edit. */

.ps-breadcrumb{display: flex; flex-wrap: nowrap; align-items: center; gap: calc(1.5 * var(--sp-1)); min-width: 0; font: 500 var(--ps-text-small) var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-breadcrumb a{flex: none; display: inline-flex; align-items: center; min-height: var(--hit); padding: 0 calc(1.5 * var(--sp-1)); margin: calc(-2.5 * var(--sp-1)) calc(-1.5 * var(--sp-1)); color: inherit; text-decoration: none; transition: color var(--ps-dur-base)}
@media (hover: hover) and (pointer: fine){.ps-breadcrumb a:hover{color: var(--ps-color-brand-deep)}}
.ps-breadcrumb svg{flex: none}
.ps-breadcrumb [aria-current]{min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: var(--ps-color-ink)}
.ps-breadcrumb--light, .ps-breadcrumb--light [aria-current]{font-size: var(--fs-label-sm); color: var(--ps-white-92)}
@media (hover: hover) and (pointer: fine){.ps-breadcrumb--light a:hover{color: var(--ps-color-surface)}}
.ps-sectionhead{display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--sp-3) var(--sp-5)}
.ps-sectionhead--center{align-items: center}
.ps-sectionhead--tight{gap: var(--sp-2) var(--sp-4)}
.ps-sectionhead__text{display: flex; flex-direction: column; gap: var(--sp-2); min-width: 0; max-width: 780px}
.ps-sectionhead__icon{margin-right: var(--sp-2); vertical-align: -0.1em; color: var(--ps-color-brand-deep)}
.ps-sectionhead__count{margin-left: calc(var(--sp-3) + 2px); font: var(--fw-strong) var(--ps-text-body)/1.2 var(--ps-font-text); letter-spacing: 0; color: var(--ps-color-brand-deep); white-space: nowrap}
.ps-sectionhead__sub{margin: 0; line-height: 1.5; color: var(--ps-color-ink-2)}
.ps-sectionhead__controls{display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--sp-3); margin-left: auto}
.ps-sectionhead__arrows{display: flex; gap: var(--sp-2)}
.ps-sectionhead.ps-sectionhead--toggle{display: block; margin: 0; font: inherit}
.ps-sectionhead__chev{transition: transform var(--ps-dur-base) var(--ps-ease-out)}
[aria-expanded="true"] > .ps-sectionhead__chev{transform: rotate(180deg)}
@media (max-width: 759px){
.ps-sectionhead__controls{margin-left: 0; justify-content: flex-start; flex: 1 1 100%}
.ps-sectionhead__arrows{display: none}}
.ps-price--card, .ps-price--ask, .ps-price--tour{display: flex; flex-direction: column; gap: 2px; padding-top: var(--sp-2); border-top: var(--border) solid var(--ps-color-line-soft)}
.ps-price--ask{flex-direction: row; align-items: center; justify-content: space-between; gap: var(--sp-3)}
.ps-price__row{display: flex; align-items: baseline; gap: var(--sp-1); white-space: nowrap; line-height: 1.15}
.ps-price__from{font: 500 var(--ps-text-body) var(--ps-font-text); color: var(--ps-color-ink-3)}
.ps-price__amount{font: 700 var(--ps-text-price-card) var(--ps-font-text); letter-spacing: -0.01em; color: var(--ps-color-ink); font-variant-numeric: tabular-nums}
.ps-price__basis{font: 600 var(--ps-text-caption)/1.3 var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-price__ask{font: 600 var(--ps-text-body) var(--ps-font-text); color: var(--ps-color-brand-darkest)}
.ps-price__wa{color: var(--ps-color-wa-icon)}
.ps-price--tour{flex-direction: row; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: var(--sp-3); padding-top: var(--sp-3); border-top-color: var(--ps-color-line)}
.ps-price--below{flex-direction: column; align-items: flex-start; gap: var(--sp-1)}
.ps-price__stack{display: flex; flex-direction: column; line-height: 1.05}
.ps-price--tour .ps-price__from{font-size: var(--ps-text-body); color: var(--ps-color-ink-2)}
.ps-price--tour .ps-price__amount{font-size: var(--ps-text-price-hero); line-height: 1.05}
.ps-price--tour .ps-price__basis{margin-top: var(--sp-1); font: 700 var(--ps-text-body)/1.3 var(--ps-font-text)}
.ps-price__call{flex: none; white-space: nowrap; color: var(--ps-color-brand-darkest)}
.ps-price__call .ps-icon{color: var(--ps-color-brand-deep)}
.ps-price--inline{font: 500 var(--ps-text-caption) var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-price--inline b{font: 700 var(--fs-h4) var(--ps-font-text); color: var(--ps-color-ink)}
.ps-price--lead{display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--sp-1) var(--sp-2); margin: 0}
.ps-price--lead .ps-price__from{color: var(--ps-color-ink-2)}
.ps-price--lead .ps-price__amount{font-size: var(--ps-text-price-hero); line-height: 1.2; letter-spacing: 0; font-variant-numeric: normal}
.ps-price--lead .ps-price__basis{font: 600 var(--ps-text-body) var(--ps-font-text)}
.ps-prose{max-width: 680px; display: flex; flex-direction: column; gap: var(--sp-4); font: 400 var(--ps-text-body)/1.7 var(--ps-font-text); color: var(--ps-color-ink-body)}
.ps-prose--long{max-width: 68ch; gap: var(--sp-4); font-size: var(--fs-prose); line-height: 1.75}
.ps-prose > *{margin: 0}
.ps-prose p{text-wrap: pretty; overflow-wrap: break-word}
.ps-prose a:not([class*="ps-"]){color: var(--ps-color-brand-deep); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px}
.ps-prose strong, .ps-prose b{font-weight: 700; color: var(--ps-color-ink)}
.ps-prose h2:not([class*="ps-"]){margin: var(--sp-7) 0 -2px; font: 600 var(--ps-text-h2)/1.18 var(--ps-font-display); letter-spacing: -0.01em; color: var(--ps-color-brand-darkest); text-wrap: balance; scroll-margin-top: calc(var(--ps-sticky-top) + var(--sp-6))}
.ps-prose.ps-prose--long h2:not([class*="ps-"]){font-size: var(--fs-h2-compact)}
.ps-prose h3:not([class*="ps-"]), .ps-prose .ps-prose__h3{margin: var(--sp-3) 0 calc(-1 * var(--sp-2)); font: 600 var(--fs-h4)/1.25 var(--ps-font-display); color: var(--ps-color-brand-darkest); text-wrap: balance; scroll-margin-top: calc(var(--ps-sticky-top) + var(--sp-6))}
.ps-prose h4:not([class*="ps-"]), .ps-prose .ps-prose__h4{margin: var(--sp-4) 0 calc(-1 * var(--sp-1)); font: 600 var(--ps-text-h3)/1.25 var(--ps-font-display); letter-spacing: -0.005em; color: var(--ps-color-brand-darkest)}
.ps-prose--html h4:not([class*="ps-"]){font: 700 var(--fs-prose)/1.35 var(--ps-font-text); color: var(--ps-color-ink)}
.ps-prose > :first-child{margin-top: 0}
.ps-prose ul:not([class*="ps-"], .ps-prose [class*="ps-"] ul), .ps-prose ol:not([class*="ps-"], .ps-prose [class*="ps-"] ol), .ps-prose .ps-prose__ul{padding-left: var(--sp-5); display: flex; flex-direction: column; gap: var(--sp-2)}
.ps-prose ul:not([class*="ps-"], .ps-prose [class*="ps-"] ul), .ps-prose .ps-prose__ul{list-style: none; padding-left: 0}
.ps-prose__ul > li{display: grid; grid-template-columns: 8px minmax(0, 1fr); gap: var(--sp-3); align-items: start}
.ps-prose--html ul:not([class*="ps-"], .ps-prose [class*="ps-"] ul) > li{position: relative; padding-left: var(--sp-5)}
.ps-prose--html ul:not([class*="ps-"], .ps-prose [class*="ps-"] ul) > li::before{content: ''; position: absolute; left: 0; top: 0.72em; width: 8px; height: 8px; border-radius: var(--ps-radius-pill); background: var(--ps-color-brand)}
.ps-prose__ul > li > span:first-child{width: 8px; height: 8px; margin-top: calc(var(--fs-prose) * 0.72); border-radius: var(--ps-radius-pill); background: var(--ps-color-brand)}
.ps-prose--long ul:not([class*="ps-"], .ps-prose [class*="ps-"] ul){gap: var(--sp-3)}
.ps-prose img:not([class*="ps-"]){border-radius: var(--ps-radius-card)}
html.ps-js .ps-prose :has(> img:is([data-ps-src], [data-ps-woke]):not([class*="ps-"], [data-ps-in])){border-radius: var(--ps-radius-card); background-color: var(--ps-color-surface-photo)}
.ps-prose table:not([class*="ps-"]){width: 100%; font-size: var(--ps-text-body)}
.ps-prose table:not([class*="ps-"]) :is(th, td){padding: var(--sp-2) var(--sp-3); border-bottom: 1px solid var(--ps-color-line); text-align: left; vertical-align: top}
.ps-prose blockquote{padding-left: var(--sp-4); border-left: 3px solid var(--ps-color-brand); font-style: italic}
.ps-prose .ps-prose__facts{margin: -2px 0 2px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr) minmax(0, 1.6fr); background: var(--ps-color-surface); border-radius: var(--ps-radius-card); box-shadow: 0 0 0 1px var(--ps-color-line); overflow: hidden}
.ps-prose__facts > div{display: flex; flex-direction: column; gap: 2px; padding: var(--sp-3) var(--sp-4); border-left: 3px solid var(--ps-color-line); min-width: 0}
.ps-prose__facts > div:first-child{border-left-color: var(--ps-color-brand)}
.ps-prose__facts dt{font: 700 var(--ps-text-caption) var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-prose__facts dd{margin: 0; font: 700 var(--ps-text-body)/1.35 var(--ps-font-text); color: var(--ps-color-ink); overflow-wrap: break-word}
.ps-prose__seasons{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-3)}
.ps-prose__seasons > div{display: flex; flex-direction: column; gap: var(--sp-2); padding: var(--sp-4) var(--sp-4) var(--sp-4); background: var(--ps-color-surface); border-radius: var(--ps-radius-card); box-shadow: 0 0 0 1px var(--ps-color-line); border-top: 4px solid var(--ps-color-brand); color: var(--ps-color-brand-deep)}
.ps-prose__seasons > div:nth-child(2){border-top-color: var(--ps-color-accent-gold)}
.ps-prose__seasons > div:nth-child(3){border-top-color: var(--ps-color-brand-deep)}
.ps-prose__seasons p{margin: 0; font: 400 var(--ps-text-body)/1.6 var(--ps-font-text); color: var(--ps-color-ink-body)}
.ps-prose .ps-prose__small, .ps-prose .ps-prose__note{margin-top: calc(-1 * var(--sp-2)); display: flex; align-items: center; gap: var(--sp-2); font: 500 var(--ps-text-small)/1.4 var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-prose .ps-prose__figure{margin: var(--sp-2) 0; display: flex; flex-direction: column; gap: var(--sp-2)}
.ps-prose__frame{position: relative; aspect-ratio: 3 / 2; border-radius: var(--ps-radius-card); overflow: hidden; background: var(--ps-color-surface-photo)}
.ps-prose__frame img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 0}
.ps-prose__figure figcaption{display: flex; gap: var(--sp-2); align-items: flex-start; font: 500 var(--ps-text-small)/1.45 var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-prose__figure figcaption .ps-icon{margin-top: var(--sp-1); color: var(--ps-color-brand-deep)}
.ps-prose .ps-prose__faq{margin-top: var(--sp-4); scroll-margin-top: calc(var(--ps-sticky-top) + var(--sp-6))}
@media (min-width: 1100px){.ps-prose--long .ps-prose__seasons{grid-template-columns: repeat(3, minmax(0, 1fr))}}
@media (max-width: 759px){
.ps-prose--long{font-size: var(--ps-text-body)}
.ps-prose h2:not([class*="ps-"]){margin-top: var(--sp-6); font-size: var(--ps-text-h3); scroll-margin-top: calc(var(--ps-sticky-top) + var(--sp-8))}
.ps-prose h3:not([class*="ps-"]), .ps-prose .ps-prose__h3{font-size: var(--fs-h4)}
.ps-prose .ps-prose__h4, .ps-prose h4:not([class*="ps-"]){font-size: var(--fs-h4)}
.ps-prose__facts{grid-template-columns: minmax(0, 1fr)}}
.ps-prose__band{margin: var(--sp-4) 0 var(--sp-2)}
.ps-prose__bridge{margin: var(--sp-2) 0; scroll-margin-top: calc(var(--ps-sticky-top) + var(--sp-6))}
.ps-prose__plan{margin: var(--sp-3) 0 var(--sp-1); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-3) var(--sp-5); padding: var(--sp-4) var(--sp-5); border-radius: var(--ps-radius-card); background: var(--ps-color-surface-tint); box-shadow: inset 0 0 0 1px var(--ps-color-ring-note)}
.ps-prose__plantext{display: flex; flex-direction: column; gap: 2px; min-width: 0}
.ps-prose__plantext b{font: 600 var(--fs-h4)/1.2 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-prose__plantext a{display: inline-flex; align-items: center; gap: var(--sp-1); min-height: var(--hit); font: 700 var(--ps-text-body) var(--ps-font-text); text-decoration: none}
.ps-toc a{text-decoration: none}
.ps-toc--side{position: sticky; top: calc(var(--ps-sticky-top) + var(--sp-6)); display: flex; flex-direction: column; padding: var(--sp-4) 0 var(--sp-2); border-top: 2px solid var(--ps-color-brand)}
.ps-toc__h{margin: 0; font: inherit}
.ps-toc--side .ps-toc__title{margin: 0; font: 700 var(--ps-text-small) var(--ps-font-text); color: var(--ps-color-ink); margin-bottom: var(--sp-1)}
.ps-toc ol{list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column}
.ps-toc--side li{position: relative; border-bottom: 1px solid var(--ps-color-line)}
.ps-toc--side li a{display: flex; align-items: center; min-height: 44px; padding: var(--sp-1) 0; font: 500 var(--ps-text-small)/1.3 var(--ps-font-text); color: var(--ps-color-ink-body); transition: color var(--ps-dur-base)}
.ps-toc--side li a::before{content: ''; position: absolute; left: -14px; top: 12px; bottom: 12px; width: 3px; border-radius: var(--ps-radius-pill); background: var(--ps-color-brand); transform: scaleY(0); transform-origin: top; transition: transform var(--ps-dur-base) var(--ps-ease-out)}
@media (hover: hover) and (pointer: fine){.ps-toc a:not(.ps-btn):hover{color: var(--ps-color-brand-deep)}}
.ps-toc a[aria-current]{font-weight: 700; color: var(--ps-color-brand-darkest)}
.ps-toc--side li a[aria-current]::before{transform: scaleY(1)}
.ps-toc--row{display: none; background: var(--ps-color-surface); border-radius: var(--ps-radius-card); box-shadow: var(--ps-shadow-card)}
.ps-toc__toggle{width: 100%; min-height: 52px; display: grid; grid-template-columns: 24px minmax(0, 1fr) 24px; gap: var(--sp-3); align-items: center; padding: var(--sp-2) var(--sp-4); border: 0; background: transparent; text-align: left; color: var(--ps-color-brand-deep)}
.ps-toc__rowtext{display: flex; flex-direction: column; min-width: 0}
.ps-toc--row .ps-toc__title{font: 700 var(--ps-text-small) var(--ps-font-text); color: var(--ps-color-ink)}
.ps-toc__current{font: 500 var(--ps-text-caption)/1.3 var(--ps-font-text); color: var(--ps-color-brand-deep); white-space: nowrap; overflow: hidden; text-overflow: ellipsis}
.ps-toc__chev{transition: transform var(--ps-dur-base) var(--ps-ease-out)}
[aria-expanded="true"] > .ps-toc__chev{transform: rotate(180deg)}
.ps-toc--row ol{padding: 0 var(--sp-4) var(--sp-2)}
.ps-toc--row li{border-top: 1px solid var(--ps-color-line)}
.ps-toc--row a{display: flex; align-items: center; gap: var(--sp-2); min-height: 44px; font: 500 var(--ps-text-body)/1.3 var(--ps-font-text); color: var(--ps-color-ink-body)}
.ps-toc__dot{flex: none; width: 8px; height: 8px; border-radius: var(--ps-radius-pill); background: var(--ps-color-rail)}
a[aria-current] > .ps-toc__dot{background: var(--ps-color-brand)}
@media (max-width: 1099px){
.ps-toc--side{display: none}
.ps-toc--row{display: block}}
.ps-toc--chips{padding-top: var(--sp-5)}
.ps-toc__chips{display: flex; flex-wrap: wrap; gap: var(--sp-2)}
.ps-toc__chipslabel{flex: none; display: inline-flex; align-items: center; min-height: 44px; margin-right: var(--sp-1); font: 700 var(--ps-text-caption) var(--ps-font-text); color: var(--ps-color-ink)}
.ps-toc--chips .ps-pill{flex: none; color: var(--ps-color-brand-darkest); white-space: nowrap}
.ps-toc--bar{
position: sticky; top: var(--ps-sticky-top); z-index: 25;
background: var(--ps-white-97); box-shadow: 0 1px 0 var(--ps-color-line), 0 -1px 0 var(--ps-color-line)}
.ps-toc__bar{display: flex; align-items: center; gap: var(--sp-3); min-height: 54px}
.ps-toc__links{display: flex; flex: 1; gap: 2px; min-width: 0; overflow-x: auto; scrollbar-width: none}
.ps-toc__links::-webkit-scrollbar{display: none}
.ps-toc__links a{
flex: none; display: flex; align-items: center; height: 54px; padding: 0 var(--sp-3); white-space: nowrap;
border-bottom: 3px solid transparent; font: 600 var(--ps-text-caption) var(--ps-font-text); color: var(--ps-color-brand-darkest);
transition: border-color var(--ps-dur-fast) ease, background-color var(--ps-dur-fast) ease}
.ps-toc__links a[aria-current="true"]{border-bottom-color: var(--ps-color-brand)}
@media (hover: hover) and (pointer: fine){.ps-toc__links a:hover{border-bottom-color: var(--ps-color-brand); color: var(--ps-color-brand-deep); background: var(--ps-color-surface-tint)}}
.ps-toc__links a:active{background: var(--ps-color-surface-tint)}
.ps-toc__links a:focus-visible{outline-offset: calc(-1 * var(--focus-ring))}
.ps-toc__bartitle{
flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
font: 600 var(--ps-text-card-title)/1.2 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-toc__cta{flex: none; display: flex; align-items: center; gap: var(--sp-2); align-self: stretch}
.ps-toc__links + .ps-toc__cta{gap: var(--sp-4); padding-left: var(--sp-5); border-left: 1px solid var(--ps-color-line)}
.ps-toc__cta .ps-btn{min-height: 44px}
@media (max-width: 759px){
.ps-toc--chips{padding: var(--sp-5) 0 0}
.ps-toc__chips{flex-wrap: nowrap; overflow-x: auto; padding: 2px var(--sp-4); scrollbar-width: none}
.ps-toc__chips::-webkit-scrollbar{display: none}
.ps-toc__bar{gap: var(--sp-2)}
.ps-toc__links + .ps-toc__cta{padding-left: var(--sp-2)}}
.ps-toc--float{
--pill-gap: 10px;
--pill-pad: 6px 6px 6px 10px;
--pill-ring: 44px;
--pill-ring-w: 4px;
--pill-fs-pct: 12px;
--pill-fs-tab: 15px;
--pill-tab-px: 14px;
--pill-fs-price: 22px;
--pill-fs-basis: 12.5px;
--pill-fs-from: 13px;
--pill-gutter: 12px;
--pill-wa-px: 20px;
top: calc(var(--ps-sticky-top) + var(--pill-gutter)); margin-top: var(--ps-space-section-tight);
background: none; box-shadow: none; pointer-events: none}
.ps-toc--float .ps-toc__bar{min-height: 0}
.ps-toc__pill{
flex: 1; min-width: 0; display: flex; align-items: center; gap: var(--pill-gap); padding: var(--pill-pad); pointer-events: auto;
border-radius: var(--ps-radius-pill); background: var(--ps-white-92); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: var(--ps-shadow-float)}
.ps-toc__sentinel{display: block; height: 0}
.ps-toc__ring{position: relative; flex: none; display: grid; place-items: center; width: var(--pill-ring); height: var(--pill-ring)}
.ps-toc__ring svg{position: absolute; inset: 0; transform: rotate(-90deg)}
.ps-toc__ring circle{fill: none; stroke-width: var(--pill-ring-w)}
.ps-toc__track{stroke: var(--ps-color-line)}
.ps-toc__arc{stroke: var(--ps-color-accent-gold); stroke-dasharray: 100; stroke-dashoffset: 100; stroke-linecap: round}
.ps-toc__ring > span{position: relative; font: var(--fw-strong) var(--pill-fs-pct) var(--ps-font-text); color: var(--ps-color-brand-darkest); font-variant-numeric: tabular-nums}
.ps-toc__tabs{--pill-cue: 32px; position: relative; flex: 1; min-width: 0; display: flex; align-items: center}
.ps-toc--float .ps-toc__links{gap: var(--sp-1); scroll-behavior: smooth}
.ps-toc--float .ps-toc__links a{
height: var(--hit); padding: 0 var(--pill-tab-px); border: 0; border-radius: var(--ps-radius-pill);
font: var(--fw-display) var(--pill-fs-tab) var(--ps-font-text); color: var(--ps-color-ink-2);
transition: background-color var(--ps-dur-fast) var(--ps-ease-out), color var(--ps-dur-fast) var(--ps-ease-out)}
.ps-toc--float .ps-toc__links a[aria-current="true"]{background: var(--ps-color-tint); color: var(--ps-color-brand-darkest)}
.ps-toc__cue{
position: absolute; top: 50%; z-index: 2; display: grid; place-items: center; width: var(--pill-cue); height: var(--pill-cue); margin-top: calc(var(--pill-cue) / -2);
padding: 0; border: 0; border-radius: var(--ps-radius-pill); background: var(--ps-color-surface); box-shadow: var(--ps-shadow-card); color: var(--ps-color-brand-darkest); cursor: pointer;
opacity: 0; visibility: hidden; transition: opacity var(--ps-dur-fast) var(--ps-ease-out), visibility var(--ps-dur-fast)}
.ps-toc__cue::after{content: ""; position: absolute; inset: calc((var(--hit) - var(--pill-cue)) / -2)}
.ps-toc__cue--l{left: 0}
.ps-toc__cue--r{right: 0}
.ps-toc__cue:enabled{opacity: 1; visibility: visible}
.ps-toc--float .ps-toc__cta{align-self: center; gap: var(--sp-3)}
.ps-toc--float .ps-toc__links + .ps-toc__cta, .ps-toc__tabs + .ps-toc__cta{padding-left: 0; border-left: 0}
.ps-toc__price{display: grid; padding-left: var(--pill-tab-px); border-left: var(--border) solid var(--ps-color-line); line-height: 1.15; white-space: nowrap}
.ps-toc__price small{font: var(--fw-text) var(--pill-fs-from) var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-toc__price b{font: var(--fw-display) var(--pill-fs-price)/1.15 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-toc__price em{font: var(--fw-display) var(--pill-fs-basis) var(--ps-font-text); font-style: normal; color: var(--ps-color-brand-deep)}
.ps-toc__wa.ps-btn{min-height: var(--hit); padding: 0 var(--pill-wa-px); font-size: var(--pill-fs-tab)}
@media (hover: hover) and (pointer: fine){.ps-toc--float .ps-toc__links a:not([aria-current="true"]):hover{background: var(--ps-color-ground); color: var(--ps-color-brand-darkest)}}
@media (max-width: 1099px){.ps-toc__price small{display: none}}
@media (max-width: 759px){
.ps-toc--float .ps-toc__bar{padding-inline: var(--pill-gap)}
.ps-toc__price{display: none}
.ps-toc__wa.ps-btn{width: var(--hit); padding: 0; justify-content: center}
.ps-toc__wa span{display: none}}
.ps-toc--chapters{
--chap-thumb-w: 56px;
--chap-thumb-h: 44px;
--chap-thumb-r: 11px;
--chap-row-r: 16px;
--chap-row-pad: 7px;
--chap-fs: 14px;
--chap-fs-num: 11.5px;
--chap-fs-head: 12px;
--chap-fs-clock: 12.5px;
--chap-dot: 26px;
--chap-chip-h: 40px;
--chap-line: 3px;
--chap-strip: 4px;
--chap-gold-ring: 3.5px;
--chap-6: 6px;
--chap-10: 10px;
--chap-14: 14px;
--chap-bar-r: 18px}
.ps-toc__chaps{list-style: none; margin: 0; padding: 0}
.ps-toc--side.ps-toc--chapters, .ps-toc--chapters.ps-toc--side{border-top: 0; padding: 0; gap: var(--sp-3)}
.ps-toc__chead{display: flex; justify-content: space-between; align-items: center; margin: 0 var(--chap-6) 2px}
.ps-toc__chead > span{font: var(--fw-strong) var(--chap-fs-head) var(--ps-font-text); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ps-color-gold-icon)}
.ps-toc__chead small{display: inline-flex; align-items: center; gap: var(--sp-1); font: var(--fw-display) var(--chap-fs-clock) var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-toc--side .ps-toc__chaps{display: grid; gap: var(--sp-1)}
.ps-toc--side .ps-toc__chaps li{border: 0}
.ps-toc--side .ps-toc__chaps a{
display: grid; grid-template-columns: var(--chap-thumb-w) minmax(0, 1fr); gap: var(--sp-3); align-items: center; min-height: 0;
padding: var(--chap-row-pad); border-radius: var(--chap-row-r); font: var(--fw-text) var(--chap-fs)/1.3 var(--ps-font-text); color: var(--ps-color-ink-2);
transition: background-color var(--ps-dur-fast) var(--ps-ease-out)}
.ps-toc--side .ps-toc__chaps a::before{content: none}
.ps-toc__chaps i{
position: relative; display: grid; place-items: center; width: var(--chap-thumb-w); height: var(--chap-thumb-h); overflow: hidden; border-radius: var(--chap-thumb-r);
background: var(--ps-color-tint); color: var(--ps-color-brand-deep); font: var(--fw-display) var(--chap-fs)/1 var(--ps-font-display); font-style: normal;
filter: saturate(0.75) brightness(0.97); transition: filter var(--ps-dur-base) var(--ps-ease-out)}
.ps-toc__chaps i.is-plain{filter: none}
.ps-toc__chaps i picture, .ps-toc__chaps i img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-toc__chaps i em{position: absolute; inset: 0; display: none; place-items: center; background: var(--ps-scrim-photo); color: var(--ps-color-surface)}
.ps-toc__clab small{display: block; margin-bottom: 1px; font: var(--fw-strong) var(--chap-fs-num) var(--ps-font-text); letter-spacing: 0.1em; color: var(--ps-color-gold-icon)}
.ps-toc--side .ps-toc__chaps a.is-read{color: var(--ps-color-brand-deep)}
.ps-toc--side .ps-toc__chaps a.is-read i em{display: grid}
.ps-toc--side .ps-toc__chaps a[aria-current]{background: var(--ps-color-surface); color: var(--ps-color-brand-darkest); font-weight: var(--fw-display); box-shadow: var(--ps-shadow-card)}
.ps-toc--side .ps-toc__chaps a[aria-current] i{filter: none; box-shadow: 0 0 0 2px var(--ps-color-surface), 0 0 0 var(--chap-gold-ring) var(--ps-color-accent-gold)}
.ps-toc__ccta{display: grid; justify-items: start; margin: var(--chap-6) var(--chap-6) 0}
.ps-toc--chapters.ps-toc--chips{
position: sticky; top: var(--ps-sticky-top); z-index: 4; display: flex; align-items: center; gap: var(--sp-4); padding: var(--chap-10) var(--ps-space-side);
background: var(--ps-white-95); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom: var(--border) solid var(--ps-color-line)}
.ps-toc--chips .ps-toc__chaps{
flex: 1; min-width: 0; display: flex; flex-direction: row; gap: var(--sp-1); overflow-x: auto; scrollbar-width: none}
.ps-toc--chips .ps-toc__chaps::-webkit-scrollbar{display: none}
.ps-toc--chips .ps-toc__chaps li{flex: none}
.ps-toc--chips .ps-toc__chaps a{
display: inline-flex; align-items: center; gap: var(--sp-2); min-height: var(--chap-chip-h); padding: 0 var(--chap-14) 0 var(--sp-2); border-radius: var(--ps-radius-pill);
font: var(--fw-display) var(--chap-fs) var(--ps-font-text); color: var(--ps-color-ink-2); white-space: nowrap;
transition: background-color var(--ps-dur-fast) var(--ps-ease-out), color var(--ps-dur-fast) var(--ps-ease-out)}
.ps-toc--chips .ps-toc__chaps b{
display: grid; place-items: center; width: var(--chap-dot); height: var(--chap-dot); border-radius: var(--ps-radius-pill);
background: var(--ps-color-gold-wash); color: var(--ps-color-gold-icon); font: var(--fw-display) var(--chap-fs-head) var(--ps-font-display)}
.ps-toc--chips .ps-toc__chaps b .ps-icon{display: none}
.ps-toc--chips .ps-toc__chaps a.is-read{color: var(--ps-color-brand-deep)}
.ps-toc--chips .ps-toc__chaps a.is-read b{background: var(--ps-color-brand-deep); color: var(--ps-color-surface)}
.ps-toc--chips .ps-toc__chaps a.is-read b .ps-icon{display: block}
.ps-toc--chips .ps-toc__chaps a.is-read b span{display: none}
.ps-toc--chips .ps-toc__chaps a[aria-current]{background: var(--ps-color-brand-darkest); color: var(--ps-color-surface)}
.ps-toc--chips .ps-toc__chaps a[aria-current] b{background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink)}
.ps-toc--chips .ps-toc__chaps :focus-visible{outline-offset: calc(-1 * var(--focus-ring))}
.ps-toc__line{position: absolute; left: 0; right: 0; bottom: -1px; height: var(--chap-line)}
.ps-toc__line i, .ps-toc__strip i{display: block; height: 100%; background: linear-gradient(90deg, var(--ps-color-brand-deep), var(--ps-color-accent-gold)); transform: scaleX(0); transform-origin: left}
.ps-toc--chapters.ps-toc--bottom{
position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--chap-10); align-items: center;
padding: var(--chap-10) var(--sp-4) calc(var(--chap-10) + env(safe-area-inset-bottom, 0px)); border-radius: var(--chap-bar-r) var(--chap-bar-r) 0 0; background: var(--ps-color-surface); box-shadow: var(--ps-shadow-float)}
.ps-toc__strip{position: absolute; left: 0; right: 0; top: 0; height: var(--chap-strip); overflow: hidden; border-radius: var(--chap-bar-r) var(--chap-bar-r) 0 0; background: var(--ps-color-line)}
.ps-toc__where{min-width: 0}
.ps-toc__where small{display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font: var(--fw-text) var(--chap-fs-head) var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-toc__where b{font: var(--fw-display) var(--fs-control-lg) var(--ps-font-text); color: var(--ps-color-brand-darkest)}
@media (hover: hover) and (pointer: fine){
.ps-toc--side .ps-toc__chaps a:not([aria-current]):hover{background: var(--ps-color-surface-tint); color: var(--ps-color-brand-darkest)}
.ps-toc--side .ps-toc__chaps a:hover i{filter: none}
.ps-toc--chips .ps-toc__chaps a:not([aria-current]):hover{background: var(--ps-color-tint); color: var(--ps-color-brand-darkest)}}
@media (max-width: 1099px){.ps-toc--chapters.ps-toc--side{display: none}}
@media (min-width: 1100px){.ps-toc--chapters.ps-toc--chips{display: none}}
@media (min-width: 760px){.ps-toc--chapters.ps-toc--bottom{display: none}}
@media (max-width: 759px){.ps-toc--chips .ps-toc__ccta{display: none}}
.ps-placehero__crumb{margin-bottom: var(--sp-4)}
.ps-placehero__stage{position: relative; height: clamp(400px, 34vw, 520px); border-radius: var(--ps-radius-card); overflow: hidden; background: var(--ps-color-brand-darkest); box-shadow: var(--ps-shadow-hero)}
.ps-placehero__slide{position: absolute; inset: 0; overflow: hidden; opacity: 0; transition: opacity var(--dur-crossfade) ease}
.ps-placehero__slide.is-on{opacity: 1}
.ps-placehero__slide picture{display: contents}
.ps-placehero__img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-placehero__shade{position: absolute; inset: 0; background: linear-gradient(90deg, var(--ps-scrim-hero-a) 0%, var(--ps-scrim-hero-c) 40%, transparent 70%); pointer-events: none}
.ps-placehero__cap{position: absolute; left: 12px; top: 12px; z-index: 1; display: inline-flex; align-items: center; gap: var(--sp-1); max-width: calc(100% - 24px); min-height: 30px; padding: var(--sp-1) var(--sp-3); border-radius: var(--ps-radius-pill); background: var(--ps-white-95); font: 600 var(--ps-text-caption)/1.3 var(--ps-font-text); color: var(--ps-color-ink)}
.ps-placehero__cap .ps-icon{color: var(--ps-color-brand-deep)}
.ps-placehero__text{position: absolute; left: clamp(28px, 4vw, 56px); right: clamp(28px, 4vw, 56px); bottom: clamp(32px, 3.5vw, 52px); display: flex; flex-direction: column; gap: var(--sp-3); max-width: 640px; color: #fff}
.ps-placehero__kind{align-self: flex-start; display: inline-flex; align-items: center; height: 28px; padding: 0 var(--sp-3); border-radius: var(--ps-radius-pill); background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink); font: 700 var(--ps-text-caption) var(--ps-font-text)}
.ps-placehero__h1{margin: 0; color: inherit}
.ps-placehero__stage .ps-placehero__h1{text-shadow: 0 2px 14px var(--ps-shadow-ink-35)}
.ps-placehero__tag{margin: 0; font: 500 var(--fs-h4)/1.4 var(--ps-font-text); text-wrap: balance}
.ps-placehero__stage .ps-placehero__tag{text-shadow: 0 1px 6px var(--ps-shadow-ink-50)}
.ps-placehero__actions{display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3); margin-top: var(--sp-2)}
.ps-placehero__see{background: #fff; color: var(--ps-color-brand-darkest)}
@media (hover: hover) and (pointer: fine){.ps-placehero__see:hover{color: var(--ps-color-brand-darkest); gap: var(--sp-3)}}
.ps-placehero__dots{position: absolute; right: 12px; bottom: 12px; display: flex; align-items: center; gap: 2px; padding: 0 var(--sp-4); border-radius: var(--ps-radius-pill); background: var(--ps-scrim-photo)}
.ps-placehero__dots [data-ps-dot]{width: 44px; height: 46px; margin: 0 calc(-1 * var(--sp-3)); padding: 0; border: 0; background: transparent; display: grid; place-items: center}
.ps-placehero__dots [data-ps-dot] span{display: block; width: 16px; height: 6px; border-radius: var(--ps-radius-pill); background: var(--ps-white-60); clip-path: inset(0 5px round 3px); transition: clip-path var(--ps-dur-base) var(--ps-ease-out)}
.ps-placehero__dots [aria-current="true"] span{clip-path: inset(0 0 round 3px); background: #fff}
.ps-placehero__nophoto{position: relative; min-height: clamp(340px, 26vw, 400px); display: flex; flex-direction: column; justify-content: flex-end; gap: var(--sp-3); padding: var(--sp-9) clamp(var(--sp-6), 4vw, var(--sp-8)) var(--sp-6); border-radius: var(--ps-radius-card); overflow: hidden; background-color: var(--ps-color-surface-tint); background-image: repeating-radial-gradient(circle at 86% 20%, transparent 0 22px, var(--ps-color-nophoto-ring) 22px 23.5px), linear-gradient(160deg, var(--ps-color-surface-tint), var(--ps-color-surface-photo)); box-shadow: 0 0 0 1px var(--ps-color-line); color: var(--ps-color-brand-darkest)}
.ps-placehero__line{position: absolute; left: clamp(28px, 4vw, 56px); right: clamp(28px, 4vw, 56px); top: 28px}
.ps-placehero__nophoto .ps-placehero__kind{background: var(--ps-color-brand-deep); color: #fff}
.ps-placehero__kindrow{position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1) var(--sp-3)}
.ps-placehero__nophoto .ps-placehero__kind--gold{background: var(--ps-color-accent-gold); color: var(--ps-color-gold-ink)}
.ps-placehero__place{display: inline-flex; align-items: center; gap: var(--sp-1); min-height: var(--hit); padding: 0 var(--sp-1); font: 700 var(--ps-text-small) var(--ps-font-text); color: var(--ps-color-brand-deep); text-decoration: none}
.ps-placehero__known{position: relative; margin: 2px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: var(--sp-2)}
.ps-placehero__known li{display: inline-flex; align-items: center; min-height: 34px; padding: var(--sp-1) var(--sp-3); border-radius: var(--ps-radius-pill); background: var(--ps-color-surface); box-shadow: 0 0 0 1px var(--ps-color-line); font: 700 var(--ps-text-small)/1.3 var(--ps-font-text); color: var(--ps-color-brand-darkest)}
.ps-placehero__note{position: relative; margin-top: var(--sp-1); font: 700 var(--fs-prose)/1.3 var(--ps-font-text); color: var(--ps-color-ink)}
.ps-placehero__nophoto .ps-placehero__tag{max-width: 640px; color: var(--ps-color-ink-body)}
@media (max-width: 759px){
.ps-placehero__stage{height: 440px}
.ps-placehero__shade{background: linear-gradient(to top, var(--ps-scrim-hero-a) 0%, var(--ps-scrim-hero-d) 55%, transparent 80%)}
.ps-placehero__text{left: 18px; right: 18px; bottom: 68px}
.ps-placehero__tag{font-size: var(--fs-prose)}
.ps-placehero__dots{bottom: 10px}
.ps-placehero__nophoto{min-height: 340px; padding: var(--sp-8) var(--sp-4) var(--sp-5)}
.ps-placehero__line{left: 18px; right: 18px}}
.ps-tourhero{
--th-col: 400px; --th-min: 540px; --th-card-m: 28px; --th-title: 44px; --th-gap: 14px;
--th-txt-pad: 40px 40px 36px 44px; --th-top-pad: 22px 24px 0; --th-chip-fs: 14.5px; --th-chip-note: 12.5px;
--th-thumb: 34px; --th-meta-fs: 14.5px; --th-rate-fs: 13.5px; --th-chip-kind: 13px; --th-price: 34px; --th-price-fs: 14px;
--th-card-pad: var(--sp-22px) var(--sp-22px) var(--sp-18px); --th-card-tuck: -44px var(--sp-20px) 0;
padding-top: var(--sp-22px)}
.ps-tourhero__crumbs{margin: 0 0 var(--sp-14px)}
.ps-tourhero__stage{position: relative; display: grid; grid-template-columns: minmax(0, 1fr) var(--th-col); grid-template-rows: auto 1fr; border-radius: var(--ps-radius-card); box-shadow: var(--ps-shadow-hero)}
.ps-tourhero__show{display: contents}
.ps-tourhero__ph{grid-area: 1 / 1 / 3 / 3; position: relative; min-height: var(--th-min); overflow: hidden; border-radius: var(--ps-radius-card); background: var(--ps-color-brand-darkest)}
.ps-tourhero__ph::after{content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, var(--ps-scrim-hero-a) 0%, var(--ps-scrim-hero-c) 42%, transparent 66%), linear-gradient(0deg, var(--ps-scrim-photo), transparent 40%)}
.ps-tourhero__slide{position: absolute; inset: 0; overflow: hidden; opacity: 0; transition: opacity var(--ps-dur-sheet) var(--ps-ease-out)}
.ps-tourhero__slide.is-on{opacity: 1}
.ps-tourhero__slide picture{display: contents}
.ps-tourhero__img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-tourhero__ph .ps-nophoto__marker{display: none}
.ps-tourhero__top{grid-area: 1 / 1 / 2 / 2; z-index: 1; align-self: start; display: flex; justify-content: space-between; align-items: center; gap: var(--sp-10px); min-width: 0; padding: var(--th-top-pad)}
.ps-tourhero__stops{display: flex; flex-wrap: wrap; gap: var(--sp-2); min-width: 0}
.ps-tourhero__stops--many{flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none}
.ps-tourhero__stops::-webkit-scrollbar{display: none}
.ps-tourhero__stop{
flex: none; display: inline-flex; align-items: center; gap: var(--sp-2); min-height: var(--hit); padding: 0 var(--sp-14px) 0 var(--sp-5px); border: 0;
border-radius: var(--ps-radius-pill); background: var(--ps-white-16); box-shadow: inset 0 0 0 1px var(--ps-white-35);
font: 600 var(--th-chip-fs)/1.2 var(--ps-font-text); color: var(--ps-color-surface); white-space: nowrap;
-webkit-tap-highlight-color: transparent; transition: background-color var(--ps-dur-base) var(--ps-ease-out), color var(--ps-dur-base) var(--ps-ease-out), transform var(--ps-dur-press) var(--ps-ease-out)}
button.ps-tourhero__stop{cursor: pointer}
.ps-tourhero__stop small{font-size: var(--th-chip-note); font-weight: 500; opacity: .85}
.ps-tourhero__stop[aria-pressed="true"]{background: var(--ps-color-surface); color: var(--ps-color-brand-darkest)}
.ps-tourhero__thumb{
flex: none; display: grid; place-items: center; width: var(--th-thumb); height: var(--th-thumb); overflow: hidden; border-radius: var(--ps-radius-pill);
background: var(--ps-color-brand-deep); box-shadow: 0 0 0 2px var(--ps-white-92); font: 600 var(--ps-text-small)/1 var(--ps-font-display); color: var(--ps-color-surface)}
.ps-tourhero__thumb img{width: 100%; height: 100%; object-fit: cover}
.ps-tourhero__arw{flex: none; display: flex; gap: var(--sp-2)}
.ps-tourhero__nav{
width: var(--hit); height: var(--hit); padding: 0; border: 0; border-radius: var(--ps-radius-pill); display: grid; place-items: center; cursor: pointer;
background: var(--ps-white-92); color: var(--ps-color-brand-darkest); box-shadow: 0 4px 14px -6px var(--ps-shadow-ink-50);
transition: background-color var(--ps-dur-fast) var(--ps-ease-out), transform var(--ps-dur-press) var(--ps-ease-out)}
.ps-tourhero__nav:active, .ps-tourhero__stop:active{transform: scale(.97)}
@media (hover: hover) and (pointer: fine){
.ps-tourhero__nav:hover{background: var(--ps-color-surface)}
button.ps-tourhero__stop:not([aria-pressed="true"]):hover{background: var(--ps-white-28)}}
.ps-tourhero__txt{grid-area: 2 / 1 / 3 / 2; align-self: end; z-index: 1; display: grid; gap: var(--th-gap); min-width: 0; padding: var(--th-txt-pad); color: var(--ps-color-surface)}
.ps-tourhero__tags{display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-10px)}
.ps-tourhero__tags .ps-chip{min-height: 28px; padding: 0 var(--sp-3); font-size: var(--th-chip-kind); font-weight: 700}
.ps-tourhero__rating{display: inline-flex; align-items: center; gap: var(--sp-5px); font: 500 var(--th-rate-fs) var(--ps-font-text); color: var(--ps-white-92); text-decoration: none; text-shadow: 0 1px 10px var(--ps-shadow-ink-50)}
.ps-tourhero__rating b{color: var(--ps-color-surface)}
.ps-tourhero__star{color: var(--ps-color-accent-gold)}
.ps-tourhero__title{margin: 0; font: 600 var(--th-title)/1.1 var(--ps-font-display); letter-spacing: -0.01em; color: var(--ps-color-surface); text-wrap: balance; overflow-wrap: anywhere; text-shadow: 0 2px 18px var(--ps-shadow-ink-35)}
.ps-tourhero__meta{display: flex; flex-wrap: wrap; gap: var(--sp-6px) var(--sp-4); font: 600 var(--th-meta-fs) var(--ps-font-text); color: var(--ps-white-95); text-shadow: 0 1px 10px var(--ps-shadow-ink-50)}
.ps-tourhero__meta > span{display: inline-flex; align-items: center; gap: var(--sp-6px)}
.ps-tourhero__card{
grid-area: 1 / 2 / 3 / 3; align-self: center; position: relative; z-index: 2; display: grid; gap: var(--sp-14px); min-width: 0;
margin: var(--th-card-m) var(--th-card-m) var(--th-card-m) 0; padding: var(--th-card-pad); border-radius: var(--ps-radius-card);
background: var(--ps-color-surface); box-shadow: var(--ps-shadow-float)}
.ps-tourhero__pr{display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: var(--sp-3)}
.ps-tourhero__pr .ps-price--tour{padding-top: 0; border-top: 0}
.ps-tourhero__pr .ps-price__from{font-size: var(--th-price-fs)}
.ps-tourhero__pr .ps-price__amount{font-size: var(--th-price)}
.ps-tourhero__pr .ps-price__basis{font-size: var(--th-price-fs); font-weight: 600}
.ps-tourhero__pax{justify-items: end; margin-left: auto}
.ps-tourhero__also{display: grid; margin: calc(-1 * var(--sp-1)) 0 0; padding: 0; list-style: none}
.ps-tourhero__also .ps-link-arrow{flex-wrap: wrap; column-gap: var(--sp-1); font-size: var(--th-meta-fs)}
.ps-tourhero__also b{color: var(--ps-color-brand-darkest)}
.ps-tourhero__btns{display: grid; gap: var(--sp-10px)}
.ps-tourhero__asks .ps-asks__row{flex-wrap: wrap; overflow: visible}
.ps-tourhero__asks .ps-asks__row a{min-height: var(--hit); color: var(--ps-color-brand-deep); box-shadow: inset 0 0 0 1px var(--ps-color-line)}
.ps-tourhero__foot{display: flex; justify-content: center; border-top: var(--border) solid var(--ps-color-line); padding-top: var(--sp-1)}
.ps-tourhero__phone{display: inline-flex; align-items: center; gap: var(--sp-6px); min-height: var(--hit); font: 600 var(--th-meta-fs) var(--ps-font-text); color: var(--ps-color-brand-deep); text-decoration: none}
@media (max-width: 1099px){
.ps-tourhero{--th-min: 440px; --th-title: 34px; --th-txt-pad: 28px 28px 72px}
.ps-tourhero__stage{grid-template-columns: minmax(0, 1fr); box-shadow: none}
.ps-tourhero__ph{grid-area: 1 / 1 / 3 / 2; box-shadow: var(--ps-shadow-hero)}
.ps-tourhero__card{grid-area: 3 / 1 / 4 / 2; margin: var(--th-card-tuck)}}
@media (max-width: 759px){
.ps-tourhero{--th-min: 420px; --th-title: 26px; --th-txt-pad: 16px 16px 64px; --th-top-pad: 12px 12px 0; --th-gap: 10px; --th-meta-fs: 14px; --th-card-tuck: -40px var(--sp-2) 0; --th-card-pad: var(--sp-4); padding: var(--sp-3) var(--sp-3) 0}
.ps-tourhero__crumbs{margin: var(--sp-1) var(--sp-1) var(--sp-10px)}
.ps-tourhero__arw{display: none}
.ps-tourhero__stops{flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-right: calc(-1 * var(--sp-3)); padding-right: var(--sp-3)}}
.ps-ritual__hero{padding-top: var(--sp-5)}
.ps-ritual__crumbs{margin: 0 0 var(--sp-3)}
.ps-ritual__hero-grid{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); align-items: start}
.ps-ritual__hero-media{
position: relative; aspect-ratio: 21 / 9; margin: 0; overflow: hidden;
border-radius: var(--ps-radius-card); background: var(--ps-color-surface-photo)}
.ps-ritual__hero-media img, .ps-ritual__hero-media picture{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-ritual__hero-cap{
position: absolute; left: var(--sp-3); bottom: var(--sp-3); display: inline-flex; align-items: center; gap: var(--sp-1);
max-width: calc(100% - var(--sp-5)); min-height: 30px; padding: var(--sp-1) var(--sp-3); border-radius: var(--ps-radius-pill);
background: var(--ps-white-95); font: 600 var(--ps-text-caption)/1.3 var(--ps-font-text); color: var(--ps-color-ink)}
.ps-ritual__hero-cap .ps-icon{flex: none; color: var(--ps-color-brand-deep)}
.ps-ritual__card{display: flex; flex-direction: column; gap: var(--sp-4); padding: var(--ps-space-card-pad)}
.ps-ritual__chip{align-self: flex-start}
.ps-ritual__chip .ps-icon{color: var(--ps-color-gold-ink)}
.ps-ritual__title{color: var(--ps-color-brand-darkest)}
.ps-ritual__tagline{font: 500 var(--ps-text-name)/1.4 var(--ps-font-display); color: var(--ps-color-brand-deep)}
.ps-ritual__meta{display: flex; flex-wrap: wrap; gap: var(--sp-1) var(--sp-4); font: 700 var(--ps-text-body) var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-ritual__meta span{display: inline-flex; align-items: center; gap: var(--sp-1)}
.ps-ritual__actions{display: grid; gap: var(--sp-2)}
.ps-ritual__np{
position: relative; overflow: hidden; padding: var(--sp-6); border-radius: var(--ps-radius-card);
background: var(--c-paper); box-shadow: inset 0 0 0 var(--border) var(--c-paper-line)}
.ps-ritual__np-initial{
position: absolute; right: var(--sp-6); bottom: -0.18em; pointer-events: none;
font: 600 calc(var(--fs-np-initial) * 1.68)/1 var(--ps-font-display); letter-spacing: -0.04em; color: var(--c-paper-mark)}
.ps-ritual__np-grid{position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-4) var(--sp-8); align-items: end}
.ps-ritual__np-main{display: flex; flex-direction: column; gap: var(--sp-4); min-width: 0; max-width: 640px}
.ps-ritual__np-kicker{display: flex; align-items: center; gap: var(--sp-3)}
.ps-ritual__np-diya{
display: grid; place-items: center; flex: none; width: 52px; height: 52px; border-radius: var(--ps-radius-pill);
background: var(--ps-color-surface); color: var(--ps-color-gold-icon); box-shadow: 0 0 0 var(--border) var(--c-paper-rule)}
.ps-ritual__np-pin{display: inline-flex; align-items: center; gap: var(--sp-1); font: 600 var(--ps-text-card-title) var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-ritual__np-side{display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0}
.ps-ritual__np-actions{display: flex; flex-wrap: wrap; gap: var(--sp-3)}
.ps-ritual__np-actions .ps-btn{flex: 0 0 auto; white-space: nowrap}
@media (min-width: 900px){
.ps-ritual__hero-grid{grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr)}
.ps-ritual__hero-media{aspect-ratio: 4 / 5}
.ps-ritual__np{padding: var(--sp-7) var(--sp-7) var(--sp-7)}
.ps-ritual__np-grid{grid-template-columns: minmax(0, 1.4fr) minmax(340px, 1fr)}
.ps-ritual__np-side{padding: var(--sp-5); border-radius: var(--ps-radius-card); background: var(--ps-color-surface); box-shadow: var(--ps-shadow-card)}
.ps-ritual__np-actions .ps-btn{flex: 1 1 100%}}
@media (min-width: 1100px){
.ps-ritual__hero-grid{grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr)}
.ps-ritual__hero-media{aspect-ratio: 4 / 3}}
@media (max-width: 759px){
.ps-ritual__hero{padding: var(--sp-3) var(--sp-3) 0}
.ps-ritual__crumbs{margin: var(--sp-1) var(--sp-1) var(--sp-3)}
.ps-ritual__hero-grid{gap: var(--sp-3)}
.ps-ritual__hero-media{aspect-ratio: 4 / 3}
.ps-ritual__card{gap: var(--sp-3); padding: var(--sp-4) var(--sp-4) var(--sp-5)}
.ps-ritual__card .ps-price__call{display: none}
.ps-ritual__tagline{font-size: var(--ps-text-menu-title)}
.ps-ritual__np{padding: var(--sp-5) var(--sp-4) var(--sp-5)}
.ps-ritual__np-initial{right: var(--sp-4); font-size: calc(var(--fs-np-initial) * 1.05)}
.ps-ritual__np-main{gap: var(--sp-3)}
.ps-ritual__np-actions .ps-btn{flex: 1 1 100%}}
:root{
--ps-ritual-fs19: 19px;
--ps-ritual-fs21: 21px;
--ps-ritual-fs-h2: clamp(26px, 2.2vw, 32px)}
.ps-ritual__two{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-28px) var(--sp-56px); align-items: start; margin-top: var(--sp-22px)}
.ps-ritual__prose{min-width: 0}
.ps-ritual__pray{display: flex; flex-direction: column; gap: var(--sp-3); padding: var(--sp-20px) var(--sp-22px); box-shadow: 0 0 0 1px var(--ps-color-line)}
.ps-ritual__pray-title{font: 600 var(--fs-20px)/1.25 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-ritual__pray-list, .ps-ritual__included-list{display: flex; flex-direction: column; gap: var(--sp-10px); margin: 0; padding: 0; list-style: none}
.ps-ritual__pray-list li, .ps-ritual__hl li{display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: var(--sp-10px)}
.ps-ritual__pray-list li{font: 400 var(--fs-16px)/1.5 var(--ps-font-text); color: var(--ps-color-ink-body)}
.ps-ritual__pray-list .ps-icon{color: var(--ps-color-gold-icon)}
.ps-ritual__where{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-20px); align-items: stretch; margin-top: var(--sp-20px)}
.ps-ritual__figure{display: flex; flex-direction: column; gap: var(--sp-2); margin: 0}
.ps-ritual__figure-media{
position: relative; flex: 1; min-height: 320px; overflow: hidden;
border-radius: var(--ps-radius-card); background: var(--ps-color-surface-photo)}
.ps-ritual__figure-media img, .ps-ritual__figure-media picture,
.ps-ritual__steps-media img, .ps-ritual__steps-media picture{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover}
.ps-ritual__steps{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-5) var(--sp-56px); align-items: start; margin-top: var(--sp-26px)}
.ps-ritual__steps-photo{display: flex; flex-direction: column; gap: var(--sp-2); margin: 0}
.ps-ritual__steps-media{
position: relative; aspect-ratio: 3 / 2; overflow: hidden;
border-radius: var(--ps-radius-card); background: var(--ps-color-surface-photo)}
.ps-ritual__steps-list{min-width: 0}
.ps-ritual__note{
display: flex; align-items: flex-start; gap: var(--sp-10px); max-width: 680px; margin-top: var(--sp-5);
font: 500 var(--fs-17px)/1.6 var(--ps-font-text); color: var(--ps-color-ink-body)}
.ps-ritual__note .ps-icon{flex: none; margin-top: var(--sp-1); color: var(--ps-color-brand-deep)}
.ps-ritual__incl{margin-top: var(--sp-20px)}
.ps-ritual__price-grid{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-20px); align-items: start}
.ps-ritual__price{display: flex; flex-direction: column; gap: var(--sp-14px); padding: var(--sp-26px) var(--sp-28px)}
.ps-ritual__h2{font: 600 var(--ps-ritual-fs-h2)/1.15 var(--ps-font-display); color: var(--ps-color-brand-darkest)}
.ps-ritual__hl{display: flex; flex-direction: column; gap: var(--sp-2); margin: 0; padding: var(--sp-3) 0 0; list-style: none; border-top: 1px solid var(--ps-color-line)}
.ps-ritual__hl li{font: 500 var(--fs-16px)/1.45 var(--ps-font-text); color: var(--ps-color-ink)}
.ps-ritual__hl .ps-icon{color: var(--ps-color-brand)}
.ps-ritual__price-side{display: flex; flex-direction: column; gap: var(--sp-20px); min-width: 0}
.ps-ritual__before{display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-28px) var(--sp-56px); align-items: start; margin-top: var(--sp-22px)}
.ps-ritual__before .ps-ritual__prose{max-width: 680px}
.ps-ritual__aside-price{font: 500 var(--fs-control-lg) var(--ps-font-text); color: var(--ps-color-ink-2)}
.ps-ritual__aside-price b{font: 700 var(--fs-18px) var(--ps-font-text); color: var(--ps-color-ink)}
.ps-ritual__aside-basis{margin-top: calc(-1 * var(--sp-2)); font: 600 var(--fs-control) var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-ritual__guide{
display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: var(--sp-4); align-items: center; padding: var(--sp-20px) var(--sp-22px);
color: var(--ps-color-ink); text-decoration: none}
@media (hover: hover) and (pointer: fine){.ps-ritual__guide:hover{color: var(--ps-color-ink)}}
.ps-ritual__guide > .ps-icon{color: var(--ps-color-brand-deep)}
.ps-ritual__guide-icon{
display: grid; place-items: center; width: 44px; height: 44px; border-radius: var(--ps-radius-pill);
background: var(--ps-color-surface-tint); color: var(--ps-color-brand-deep)}
.ps-ritual__guide-text{display: flex; flex-direction: column; gap: var(--sp-1); min-width: 0}
.ps-ritual__guide-kicker{font: 600 var(--fs-control) var(--ps-font-text); color: var(--ps-color-brand-deep)}
.ps-ritual__guide-title{font: 600 var(--ps-ritual-fs21)/1.3 var(--ps-font-display); color: var(--ps-color-brand-darkest); text-wrap: pretty}
@media (min-width: 1100px){
.ps-ritual__two{grid-template-columns: minmax(0, 680px) minmax(0, 1fr)}
.ps-ritual__pray{position: sticky; top: calc(var(--ps-sticky-top) + var(--sp-5))}
.ps-ritual__where.has-photo{grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr)}
.ps-ritual__steps.has-photo{grid-template-columns: minmax(0, 680px) minmax(0, 1fr)}
.ps-ritual__steps-photo{order: 2; position: sticky; top: calc(var(--ps-sticky-top) + var(--sp-5))}
.ps-ritual__steps-media{aspect-ratio: 4 / 5}
.ps-ritual__price-grid{grid-template-columns: repeat(2, minmax(0, 1fr))}}
@media (min-width: 1280px){
.ps-ritual__before{grid-template-columns: minmax(0, 680px) minmax(0, 280px)}}
@media (max-width: 759px){
.ps-ritual__figure-media{min-height: 220px}
.ps-ritual__price{padding: var(--sp-18px) var(--sp-4) var(--sp-20px)}
.ps-ritual__h2{font-size: var(--fs-26px)}
.ps-ritual__guide-title{font-size: var(--ps-ritual-fs19)}}
