/* YESHEN 3.3 — final visual system, driven by user-supplied yeshen-site.zip.
   Applies AFTER all legacy styles so one restrained black/ivory/gold system wins. */
:root[data-theme='light']{
  --v34-bg:#f8f5ef;--v34-paper:#fffdf8;--v34-ink:#24201b;--v34-copy:#60574c;--v34-line:#dfd4c3;
  --v34-quiet:#816a4b;--v34-accent:#b18b52;--v34-button:#201b17;--v34-button-text:#fffaf1;
}
:root[data-theme='dark']{
  --v34-bg:#100f0d;--v34-paper:#1b1916;--v34-ink:#f7f0e5;--v34-copy:#c3b8a7;--v34-line:#433a2f;
  --v34-quiet:#c4a67f;--v34-accent:#c0a070;--v34-button:#c1a273;--v34-button-text:#17110c;
}
:root[data-theme] body:not(.is-admin){background:var(--v34-bg)!important;color:var(--v34-ink)!important;font-family:Montserrat,'DM Sans',Arial,sans-serif}
:root[data-theme] body:not(.is-admin) h1,
:root[data-theme] body:not(.is-admin) h2,
:root[data-theme] body:not(.is-admin) h3,
:root[data-theme] body:not(.is-admin) .team-info h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500}
:root[data-theme] body:not(.is-admin) .eyebrow,
:root[data-theme] body:not(.is-admin) .section-index,
:root[data-theme] body:not(.is-admin) .v2-section-top .section-index,
:root[data-theme] body:not(.is-admin) .v34-kicker{color:var(--v34-quiet)!important}
:root[data-theme] body:not(.is-admin) h2 em,
:root[data-theme] body:not(.is-admin) h1 em{color:var(--v34-accent)!important}
:root[data-theme] body:not(.is-admin) a:focus-visible,
:root[data-theme] body:not(.is-admin) button:focus-visible,
:root[data-theme] body:not(.is-admin) select:focus-visible{outline:2px solid #bd9b69;outline-offset:4px}
:root[data-theme] body:not(.is-admin) .site-header{background:var(--v34-bg)!important;color:var(--v34-ink)!important;border-bottom:1px solid var(--v34-line)!important;box-shadow:none!important}
:root[data-theme] body:not(.is-admin) .site-header .brand,
:root[data-theme] body:not(.is-admin) .site-header a:not(.nav-book){color:var(--v34-ink)!important}
:root[data-theme] body:not(.is-admin) .site-header .brand em{color:var(--v34-quiet)!important}
:root[data-theme] body:not(.is-admin) .nav-book{background:var(--v34-button)!important;color:var(--v34-button-text)!important;border:1px solid var(--v34-button)!important}
:root[data-theme] body:not(.is-admin) .nav-book:hover{opacity:.86}
:root[data-theme] body:not(.is-admin) .theme-toggle{color:var(--v34-ink)!important;border-color:var(--v34-line)!important;background:transparent!important}
:root[data-theme] body:not(.is-admin) .mobile-nav{background:var(--v34-bg)!important;border-color:var(--v34-line)!important}
:root[data-theme] body:not(.is-admin) .mobile-nav a{color:var(--v34-ink)!important}
/* Hero base supplied by YESHEN: hold each frame still; no zoom transforms, no repeated video pan. */
:root[data-theme] .yeshen-v3-hero{min-height:clamp(640px,95svh,980px)!important;background:#120e0b!important;isolation:isolate!important}
:root[data-theme] .yeshen-v3-hero .hero-image-holder,
:root[data-theme] .yeshen-v3-hero .hero-photograph,
:root[data-theme] .yeshen-v3-hero .hero-motion-video,
:root[data-theme] .yeshen-v3-hero .hero-mobile-video{transform:none!important;animation:none!important;transition:opacity 1.2s ease!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;position:absolute!important}
:root[data-theme] .yeshen-v3-hero .hero-image-holder picture{position:absolute;inset:0;width:100%;height:100%}
:root[data-theme] .yeshen-v3-hero .hero-image-holder picture img{height:100%;width:100%;object-fit:cover}
:root[data-theme] .yeshen-v3-hero .hero-mobile-video{display:none!important}
:root[data-theme] .yeshen-v3-hero .hero-vignette{background:linear-gradient(90deg,rgba(10,8,7,.86),rgba(10,8,7,.47) 54%,rgba(10,8,7,.12) 100%),linear-gradient(0deg,rgba(10,8,7,.76),transparent 58%)!important}
:root[data-theme] .yeshen-v3-hero .hero-v2-inner{align-items:end!important;padding-bottom:clamp(70px,9vw,120px)!important}
:root[data-theme] .yeshen-v3-hero .hero-v2-copy{max-width:790px!important}
:root[data-theme] .yeshen-v3-hero h1{font-family:'Cormorant Garamond',Georgia,serif!important;color:#fff8e9!important;font-size:clamp(84px,12vw,177px)!important;font-weight:500!important;line-height:.84!important;letter-spacing:-.045em!important;text-shadow:0 2px 32px #0005}
:root[data-theme] .yeshen-v3-hero .hero-kicker{color:#d2ae7a!important;letter-spacing:.2em!important}
:root[data-theme] .yeshen-v3-hero .hero-v3-subtitle{font-size:clamp(21px,3.5vw,34px)!important;font-family:'Cormorant Garamond',Georgia,serif!important;font-style:italic!important;color:#f7e3c4!important}
:root[data-theme] .yeshen-v3-hero .hero-v2-description{color:#f8f0e4!important;max-width:48ch!important;font-size:clamp(14px,1.4vw,16px)!important}
:root[data-theme] .yeshen-v3-hero .hero-aside{color:#f0e5d3!important;border-color:#a28a6f80!important}
:root[data-theme] .yeshen-v3-hero .hero-aside *{color:#f0e5d3!important}
:root[data-theme] .yeshen-v3-hero .hero-scroll-cue{color:#e9ded1!important}
:root[data-theme] .yeshen-v3-hero .hero-v3-secondary{color:#f6ead6!important}
:root[data-theme] .yeshen-v3-hero .btn-gold{background:#c2a071!important;color:#15100b!important;border-color:#c2a071!important}
/* Header over home media, like the supplied standalone website; other pages keep solid themed header. */
@supports selector(body:has(main)) {
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header{background:rgba(15,12,9,.85)!important;border-bottom:1px solid #e1c39b30!important;backdrop-filter:blur(12px)!important}
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand,
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header a:not(.nav-book){color:#f7f0e6!important}
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .theme-toggle{color:#f7f0e6!important;border-color:#e2cba644!important}
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand em{color:#d6b78b!important}
}
/* Social contact is a designed editorial section, not a floating collection of links. */
:root[data-theme] .yeshen-v2-book{background:var(--v34-bg)!important;border-block:1px solid var(--v34-line)!important;color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-book h2{color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-book p{color:var(--v34-copy)!important}
:root[data-theme] .yeshen-v2-book .social-link{background:transparent!important;border-color:var(--v34-line)!important;color:var(--v34-ink)!important;min-height:78px;transition:background .3s,border-color .3s}
:root[data-theme] .yeshen-v2-book .social-link:hover{background:var(--v34-paper)!important;border-color:var(--v34-accent)!important}
:root[data-theme] .social-links .social-link .social-wordmark b{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(23px,2.5vw,30px)!important;font-weight:500!important;color:var(--v34-ink)!important}
:root[data-theme] .social-links .social-link .social-wordmark small{font-family:Montserrat,'DM Sans',sans-serif!important;font-size:11px!important;color:var(--v34-copy)!important}
:root[data-theme] .social-links .social-link .social-number,
:root[data-theme] .social-links .social-link .social-icon,
:root[data-theme] .social-links .social-link .social-channel-monogram{color:var(--v34-accent)!important;border-color:var(--v34-line)!important}
:root[data-theme] .v33-online-head{color:var(--v34-quiet)!important}
:root[data-theme] .v33-social-note{color:var(--v34-copy)!important}
:root[data-theme] .v33-social-note p{color:var(--v34-ink)!important}
:root[data-theme] .v33-book-steps{border-color:var(--v34-line)!important}
:root[data-theme] .v33-book-steps strong{color:var(--v34-ink)!important}
:root[data-theme] .v33-book-steps small{color:var(--v34-copy)!important}
:root[data-theme] .v33-book-steps>div>span{color:var(--v34-accent)!important}
/* Portraits: no green lettering or overlaid numbers / View Portrait text. The ENTIRE card stays clickable. */
:root[data-theme] .yeshen-v2-team{background:var(--v34-paper)!important;color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-team .v2-section-top p{color:var(--v34-copy)!important}
:root[data-theme] .yeshen-v2-team h2{color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-team .team-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:clamp(8px,1.4vw,18px)!important;max-width:100%!important;overflow:visible!important}
:root[data-theme] .team-grid .v3-therapist-card{position:relative!important;flex:none!important;width:auto!important;min-width:0!important;max-width:none!important;background:transparent!important;border:1px solid var(--v34-line)!important;transform:none!important;overflow:hidden!important}
:root[data-theme] .team-grid .v3-portrait-button{display:block!important;width:100%!important;padding:0!important;background:transparent!important;color:var(--v34-ink)!important;border:0!important;cursor:zoom-in!important;text-align:left!important}
:root[data-theme] .team-grid .team-avatar{aspect-ratio:3/4!important;overflow:hidden!important;background:#1b1511!important}
:root[data-theme] .team-grid .team-avatar img{display:block!important;object-fit:cover!important;object-position:center top!important;height:100%!important;width:100%!important;transition:transform .7s cubic-bezier(.23,.78,.32,1)!important;transform:none!important}
:root[data-theme] .team-grid .v3-portrait-button:hover .team-avatar img{transform:scale(1.045)!important}
:root[data-theme] .team-grid .team-info{padding:15px 16px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:var(--v34-paper)!important}
:root[data-theme] .team-grid .team-info h3{font-size:clamp(26px,2.7vw,35px)!important;color:var(--v34-ink)!important;line-height:1!important;margin:0!important}
:root[data-theme] .team-grid .team-info>span{color:var(--v34-accent)!important}
:root[data-theme] .team-grid .therapist-number,
:root[data-theme] .team-grid .v3-card-hover,
:root[data-theme] .team-grid .v3-portrait-button::before,
:root[data-theme] .team-grid .v3-portrait-button::after{display:none!important;content:none!important}
:root[data-theme] .v2-team-bottom{color:var(--v34-copy)!important;border-color:var(--v34-line)!important}
:root[data-theme] .v2-team-bottom a{color:var(--v34-quiet)!important}
/* Coverage: premium hierarchy, real city statuses set by owner, no green text. */
:root[data-theme] .yeshen-v2-coverage{background:var(--v34-bg)!important;color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-coverage .v2-section-top h2,
:root[data-theme] .yeshen-v2-coverage .map-information h3{color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-coverage p,
:root[data-theme] .yeshen-v2-coverage .v33-map-lead,
:root[data-theme] .yeshen-v2-coverage small{color:var(--v34-copy)!important}
:root[data-theme] .yeshen-v2-coverage .map-information,
:root[data-theme] .yeshen-v2-coverage .map-panel{background:var(--v34-paper)!important;border:1px solid var(--v34-line)!important;color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-coverage .v33-city-shortcut{border-color:var(--v34-line)!important;color:var(--v34-ink)!important;background:transparent!important}
:root[data-theme] .yeshen-v2-coverage .v33-city-shortcut:hover{border-color:var(--v34-accent)!important;background:var(--v34-bg)!important}
:root[data-theme] .yeshen-v2-coverage .coverage-result{background:var(--v34-bg)!important;border:1px solid var(--v34-line)!important;color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-coverage .coverage-state.available,
:root[data-theme] .yeshen-v2-coverage .coverage-result.available{color:var(--v34-quiet)!important}
:root[data-theme] .yeshen-v2-coverage .v33-coverage-intro{background:var(--v34-paper)!important;border-color:var(--v34-line)!important;color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-coverage .v33-coverage-number{color:var(--v34-quiet)!important}
:root[data-theme] .yeshen-v2-coverage .v33-coverage-process{background:var(--v34-paper)!important;border-color:var(--v34-line)!important}
:root[data-theme] .yeshen-v2-coverage .v33-process-card{border-color:var(--v34-line)!important}
:root[data-theme] .yeshen-v2-coverage .v33-process-card strong{color:var(--v34-ink)!important}
:root[data-theme] .yeshen-v2-coverage .v33-process-card>span{color:var(--v34-accent)!important}
/* Secondary pages — purposeful editorial components rather than long dead space. */
:root[data-theme] .v34-kicker{font-family:Montserrat,'DM Sans',sans-serif!important;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--v34-quiet)}
:root[data-theme] .v34-about-hero{position:relative;min-height:420px;display:flex;align-items:end;padding:110px 0 70px!important;background:linear-gradient(90deg,rgba(15,11,9,.84),rgba(15,11,9,.34)),url('/assets/hero-poster.jpg') center 40%/cover no-repeat!important;color:#fff8ed!important}
:root[data-theme] .v34-about-hero-inner{width:100%}
:root[data-theme] .v34-page-kicker{font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.22em;color:#d2b48b;display:flex;gap:20px;align-items:center}
:root[data-theme] .v34-about-hero h1{font-size:clamp(74px,11vw,154px);line-height:.79;letter-spacing:-.04em;color:#fff8ed!important;margin:32px 0 25px!important}
:root[data-theme] .v34-about-hero h1 em{color:#dbb789!important}
:root[data-theme] .v34-about-hero p{max-width:48ch;color:#f5ebdb!important;line-height:1.9;font-size:14px}
:root[data-theme] .v34-text-cta{color:#e3c198;display:inline-flex;gap:18px;align-items:center;margin-top:18px;text-transform:uppercase;font-size:11px;letter-spacing:.1em;text-decoration:none;border-bottom:1px solid #c9a678;padding-bottom:7px}
:root[data-theme] .v34-about-story{padding-block:clamp(65px,8vw,108px);display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(32px,6vw,95px);align-items:center}
:root[data-theme] .v34-about-visual{height:clamp(360px,44vw,560px);position:relative;overflow:hidden;background:#17130f}
:root[data-theme] .v34-about-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
:root[data-theme] .v34-visual-caption{position:absolute;bottom:0;left:0;right:0;padding:23px 25px;background:linear-gradient(0deg,#0b0a08c9,transparent);font-size:10px;color:#f1e0c9;letter-spacing:.19em}
:root[data-theme] .v34-about-copy h2{font-size:clamp(48px,5vw,76px);line-height:.98;margin:20px 0 25px;color:var(--v34-ink)!important}
:root[data-theme] .v34-about-copy>p{color:var(--v34-copy)!important;line-height:1.9;max-width:56ch;font-size:14px}
:root[data-theme] .v34-about-divider{display:flex;gap:15px;align-items:center;border-block:1px solid var(--v34-line);margin:28px 0;padding:15px 0;color:var(--v34-quiet);font-size:10px;letter-spacing:.14em}
:root[data-theme] .v34-about-copy .btn-gold,
:root[data-theme] .v34-team-outro .btn-gold{background:var(--v34-button)!important;color:var(--v34-button-text)!important;border-color:var(--v34-button)!important}
:root[data-theme] .v34-about-promise{background:var(--v34-paper)!important;border-block:1px solid var(--v34-line)!important;padding-block:80px!important}
:root[data-theme] .v34-about-promise h2{font-size:clamp(42px,5vw,74px);max-width:14ch;color:var(--v34-ink)!important;line-height:1.03;margin:15px 0 40px}
:root[data-theme] .v34-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
:root[data-theme] .v34-values>div{border-top:1px solid var(--v34-line);padding-top:20px}
:root[data-theme] .v34-values h3{font-size:clamp(27px,3vw,39px);margin:8px 0;color:var(--v34-ink)!important}
:root[data-theme] .v34-values p{color:var(--v34-copy)!important;line-height:1.8;font-size:13px;max-width:34ch}
:root[data-theme] .v34-value-icon{font-size:27px;color:var(--v34-quiet)!important}
:root[data-theme] .v34-team-hero{padding-top:clamp(90px,11vw,145px);padding-bottom:clamp(44px,5vw,72px);display:flex;align-items:end;justify-content:space-between;gap:35px;position:relative;overflow:hidden}
:root[data-theme] .v34-team-heading{position:relative;z-index:1;max-width:760px}
:root[data-theme] .v34-team-hero h1{font-size:clamp(67px,9vw,120px);line-height:.9;letter-spacing:-.035em;margin:22px 0!important;color:var(--v34-ink)!important}
:root[data-theme] .v34-team-hero p{color:var(--v34-copy)!important;line-height:1.85;max-width:55ch;font-size:14px}
:root[data-theme] .v34-team-cue{margin-top:30px;display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.15em;color:var(--v34-quiet)!important}
:root[data-theme] .v34-cue-spark{font-size:25px}
:root[data-theme] .v34-team-symbol{font-family:Georgia,serif;font-size:clamp(160px,20vw,350px);line-height:1;color:var(--v34-accent)!important;opacity:.14}
:root[data-theme] .v34-team-section{padding-bottom:75px}
:root[data-theme] .v34-gallery-intro{display:flex;justify-content:space-between;gap:20px;color:var(--v34-quiet)!important;font-size:10px;letter-spacing:.18em;padding:13px 0 20px;border-top:1px solid var(--v34-line)}
:root[data-theme] .v34-team-section .team-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;margin:0!important;overflow:visible!important}
:root[data-theme] .v34-team-outro{border-top:1px solid var(--v34-line);padding:45px 0 80px;display:grid;grid-template-columns:1.3fr 1fr auto;gap:24px;align-items:center}
:root[data-theme] .v34-team-outro h2{color:var(--v34-ink)!important;font-size:clamp(36px,4vw,58px);line-height:1;margin:8px 0}
:root[data-theme] .v34-team-outro p{font-size:13px;color:var(--v34-copy)!important;line-height:1.8}
/* Other inner pages, footer and socials remain on the same palette. */
:root[data-theme] body:not(.is-admin) .page-hero{background:var(--v34-bg)!important;padding-top:90px!important;padding-bottom:34px!important}
:root[data-theme] body:not(.is-admin) .page-hero h1{color:var(--v34-ink)!important}
:root[data-theme] body:not(.is-admin) .page-hero p{color:var(--v34-copy)!important}
:root[data-theme] body:not(.is-admin) .v3-contact-page{background:var(--v34-bg)!important;color:var(--v34-ink)!important}
:root[data-theme] body:not(.is-admin) .v3-contact-page h1{color:var(--v34-ink)!important}
:root[data-theme] body:not(.is-admin) .v3-contact-page p{color:var(--v34-copy)!important}
:root[data-theme] body:not(.is-admin) .v3-contact-photo{border-color:var(--v34-line)!important}
:root[data-theme] body:not(.is-admin) .site-footer{background:var(--v34-paper)!important;border-color:var(--v34-line)!important;color:var(--v34-copy)!important}
:root[data-theme] body:not(.is-admin) .site-footer a{color:var(--v34-ink)!important}
:root[data-theme] body:not(.is-admin) .site-footer .footer-bottom{border-color:var(--v34-line)!important}
/* Modal continues to work with the full image and booking template. */
:root[data-theme] .therapist-dialog{background:var(--v34-paper)!important;color:var(--v34-ink)!important}
:root[data-theme] .therapist-dialog .therapist-dialog-info{background:var(--v34-paper)!important;color:var(--v34-ink)!important}
:root[data-theme] .therapist-dialog h2{color:var(--v34-ink)!important}
:root[data-theme] .therapist-dialog p,
:root[data-theme] .therapist-dialog small{color:var(--v34-copy)!important}
:root[data-theme] .therapist-dialog .v3-inquiry-message{background:var(--v34-bg)!important;border-color:var(--v34-line)!important}
:root[data-theme] .therapist-dialog .v3-inquiry-message p{color:var(--v34-ink)!important}
:root[data-theme] .therapist-dialog .v3-other-socials button{color:var(--v34-ink)!important;border-color:var(--v34-line)!important}
:root[data-theme] .therapist-dialog .v3-modal-wa{background:var(--v34-button)!important;color:var(--v34-button-text)!important}
:root[data-theme] .therapist-dialog .v33-modal-viber{border-color:var(--v34-line)!important;color:var(--v34-ink)!important}
@media (max-width:1120px){
 :root[data-theme] .yeshen-v2-team .team-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 :root[data-theme] .v34-team-outro{grid-template-columns:1fr 1fr}
 :root[data-theme] .v34-team-outro .btn{justify-self:start}
}
@media (max-width:760px){
 :root[data-theme] .yeshen-v3-hero .hero-v2-copy{max-width:97%!important}
 :root[data-theme] .yeshen-v3-hero .hero-aside{display:none!important}
 :root[data-theme] .yeshen-v3-hero .hero-motion-video{display:none!important}
 :root[data-theme] .yeshen-v3-hero .hero-mobile-video{display:block!important}
 :root[data-theme] .yeshen-v3-hero h1{font-size:clamp(77px,17vw,118px)!important}
 :root[data-theme] .yeshen-v2-team .team-grid,
 :root[data-theme] .v34-team-section .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 :root[data-theme] .team-grid .team-info{padding:12px!important}
 :root[data-theme] .team-grid .team-info h3{font-size:29px!important}
 :root[data-theme] .v34-about-story{grid-template-columns:1fr;gap:26px}
 :root[data-theme] .v34-about-visual{height:370px}
 :root[data-theme] .v34-about-promise{padding-block:55px!important}
 :root[data-theme] .v34-values{grid-template-columns:1fr;gap:18px}
 :root[data-theme] .v34-team-hero{padding-top:74px;gap:5px}
 :root[data-theme] .v34-team-symbol{display:none}
 :root[data-theme] .v34-team-outro{grid-template-columns:1fr;gap:12px}
 :root[data-theme] .v34-team-hero h1{font-size:clamp(65px,12vw,100px)}
}
@media (max-width:450px){
 :root[data-theme] .yeshen-v3-hero{min-height:780px!important;min-height:94svh!important}
 :root[data-theme] .yeshen-v3-hero h1{font-size:clamp(66px,20vw,95px)!important}
 :root[data-theme] .v34-about-hero{min-height:360px;padding-block:130px 42px!important}
 :root[data-theme] .v34-about-hero h1{font-size:clamp(65px,17vw,83px)!important}
 :root[data-theme] .v34-team-hero h1{font-size:clamp(60px,13vw,76px)!important}
 :root[data-theme] .team-grid .team-avatar{aspect-ratio:4/5!important}
 :root[data-theme] .team-grid .team-info h3{font-size:26px!important}
}
@media (prefers-reduced-motion:reduce){
 :root[data-theme] .yeshen-v3-hero video{display:none!important}
 :root[data-theme] .team-grid .team-avatar img{transition:none!important}
 :root[data-theme] .team-grid .v3-portrait-button:hover .team-avatar img{transform:none!important}
}
/* A custom CMS-uploaded video overrides the included mobile variant on every device. */
@media (max-width:760px){
 :root[data-theme] .yeshen-v3-hero .hero-image-holder:not(:has(.hero-mobile-video)) .hero-motion-video{display:block!important}
}
/* Final visual QA adjustments: readable wordmark over dark home hero; aligned story container. */
:root[data-theme] .v34-about-hero-inner{width:min(1240px,calc(100% - 88px))!important;margin-inline:auto!important}
@supports selector(body:has(main)) {
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span,
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span:not(em){color:#fff8ee!important}
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span em{color:#d9bd95!important}
 :root[data-theme] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .menu-toggle{color:#f6eadd!important;border-color:#e1c39b65!important}
}
@media(min-width:761px){
 :root[data-theme] .v34-team-hero{padding-top:68px!important;padding-bottom:36px!important}
 :root[data-theme] .v34-team-hero h1{font-size:clamp(69px,7.5vw,100px)!important;margin:16px 0!important;line-height:.89!important}
 :root[data-theme] .v34-team-cue{margin-top:17px!important}
}
@media(max-width:950px){:root[data-theme] .v34-about-hero-inner{width:calc(100% - 48px)!important}}
@media(max-width:700px){:root[data-theme] .v34-about-hero-inner{width:calc(100% - 34px)!important}}


/* V3.4 Restore: original dark 'Explore coverage' split panel and searchable status list.
   This is intentionally a dark editorial island in BOTH light and dark page themes. */
:root[data-theme] .yeshen-v2-coverage.coverage-classic{background:#131b16!important;color:#f6f1e6!important;padding:clamp(38px,5vw,72px) 0!important;border-top:1px solid #75694c4d!important}
:root[data-theme] .coverage-classic .classic-coverage-container{width:min(1320px,calc(100% - 56px));max-width:none!important}
:root[data-theme] .coverage-classic .yeshen-map-layout.classic-map-layout{display:grid!important;grid-template-columns:minmax(315px,.36fr) minmax(0,.64fr)!important;gap:24px!important;align-items:stretch!important;min-height:580px!important}
:root[data-theme] .coverage-classic .map-information.coverage-classic-sidebar{max-width:none!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;padding:29px 28px 24px!important;background:#26342a!important;color:#f6f1e6!important;border:1px solid #455344!important}
:root[data-theme] .coverage-classic .coverage-classic-sidebar .classic-coverage-kicker{font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:.17em;color:#bda988!important;text-transform:uppercase;margin-bottom:13px}
:root[data-theme] .coverage-classic .coverage-classic-sidebar h3{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:clamp(33px,3vw,43px)!important;font-weight:500!important;line-height:1.06!important;letter-spacing:-.035em!important;color:#f8ebcd!important;margin:0 0 19px!important}
:root[data-theme] .coverage-classic .classic-search-label{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:650;color:#f6f1e6!important;margin-bottom:10px}
:root[data-theme] .coverage-classic .classic-search-wrap{display:flex;align-items:center;gap:10px;background:#1b2920!important;border:1px solid #576859!important;border-radius:6px;padding:0 12px;min-height:48px}
:root[data-theme] .coverage-classic .classic-search-wrap:focus-within{outline:2px solid #c5a46d;outline-offset:2px;border-color:#c5a46d}
:root[data-theme] .coverage-classic .classic-search-wrap>span{color:#d6bea0;font-size:25px;line-height:1}
:root[data-theme] .coverage-classic .classic-search-wrap input{min-width:0;width:100%;flex:1;color:#fffaf0!important;background:transparent!important;border:0!important;outline:none!important;box-shadow:none!important;padding:12px 0!important;min-height:45px;font:13px 'DM Sans',sans-serif}
:root[data-theme] .coverage-classic .classic-search-wrap input::placeholder{color:#d0c8b8!important;opacity:1}
:root[data-theme] .coverage-classic .classic-search-check{border:0;border-radius:3px;color:#f8e2b8;background:transparent;font-size:20px;cursor:pointer;min-height:38px;min-width:38px}
:root[data-theme] .coverage-classic .classic-search-check:focus-visible,:root[data-theme] .coverage-classic .classic-city-row:focus-visible{outline:2px solid #e2bf80;outline-offset:2px}
:root[data-theme] .coverage-classic .classic-city-list{margin-top:14px;max-height:395px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#687866 transparent}
:root[data-theme] .coverage-classic .classic-city-row{display:flex!important;align-items:center!important;width:100%;gap:12px;padding:15px 2px!important;background:transparent!important;border:0!important;border-bottom:1px solid #556255!important;text-align:left;color:#f7f1e7!important;cursor:pointer;transition:background .22s,padding .22s}
:root[data-theme] .coverage-classic .classic-city-row:hover,:root[data-theme] .coverage-classic .classic-city-row.is-selected{background:#344537!important;padding-inline:8px!important}
:root[data-theme] .coverage-classic .classic-city-row[hidden],:root[data-theme] .coverage-classic .classic-no-match[hidden],:root[data-theme] .coverage-classic .classic-selected-result[hidden]{display:none!important}
:root[data-theme] .coverage-classic .classic-city-pin{flex:none;color:#b4c3b0;font-size:23px;line-height:1}
:root[data-theme] .coverage-classic .classic-city-info{display:grid;gap:5px;flex:1;min-width:0}
:root[data-theme] .coverage-classic .classic-city-info strong{font:650 13px 'DM Sans',sans-serif!important;color:#fff7e9!important;white-space:normal}
:root[data-theme] .coverage-classic .classic-city-info small{font:11px/1.5 'DM Sans',sans-serif;color:#c5ccbf!important}
:root[data-theme] .coverage-classic .classic-city-badge{flex:none;display:inline-flex;align-items:center;gap:6px;border-radius:22px;padding:7px 9px;white-space:nowrap;font:650 10px 'DM Sans',sans-serif!important;line-height:1!important}
:root[data-theme] .coverage-classic .classic-city-badge i{display:block;width:6px;height:6px;border-radius:50%;background:currentColor}
:root[data-theme] .coverage-classic .classic-city-badge.available{color:#e1f1e2!important;background:#345444!important}
:root[data-theme] .coverage-classic .classic-city-badge.limited{color:#f6dfad!important;background:#665337!important}
:root[data-theme] .coverage-classic .classic-city-badge.unavailable{color:#ffdbd2!important;background:#66453d!important}
:root[data-theme] .coverage-classic .classic-empty-coverage{padding:23px 3px 15px;border-bottom:1px solid #4f604f}
:root[data-theme] .coverage-classic .classic-empty-coverage strong{font:600 13px 'DM Sans',sans-serif;color:#fff3de}
:root[data-theme] .coverage-classic .classic-empty-coverage p,:root[data-theme] .coverage-classic .classic-no-match{font-size:12px;color:#d2d2c6!important;line-height:1.7;margin:10px 0!important}
:root[data-theme] .coverage-classic .coverage-result.classic-selected-result{display:flex;flex-direction:column;gap:7px;margin:15px 0 0;padding:13px 15px;background:#1b2b23!important;border:1px solid #8e795c!important;border-left:3px solid #c5a46d!important;border-radius:4px;font:12px/1.6 'DM Sans',sans-serif;color:#f5eadb!important}
:root[data-theme] .coverage-classic .classic-selected-result strong{color:#fff2d9!important;font-size:13px}
:root[data-theme] .coverage-classic .classic-selected-result span,:root[data-theme] .coverage-classic .classic-selected-result small{color:#d6d7cd!important}
:root[data-theme] .coverage-classic .classic-coverage-notice{margin-top:24px;padding:17px 18px;border:1px solid #5b705b;background:#213a2c!important}
:root[data-theme] .coverage-classic .classic-coverage-notice strong{font:600 11px 'DM Sans',sans-serif;color:#f6e7c6!important}
:root[data-theme] .coverage-classic .classic-coverage-notice p{font:11px/1.85 'DM Sans',sans-serif;color:#e0e2d9!important;margin:7px 0 0!important}
:root[data-theme] .coverage-classic .classic-coverage-contact{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:21px;text-decoration:none;color:#f7e7c7!important;font-size:12px;border-bottom:1px solid #a99370;padding-bottom:8px;width:fit-content;max-width:100%}
:root[data-theme] .coverage-classic .classic-coverage-contact:hover{color:#fff!important}
:root[data-theme] .coverage-classic .map-panel.coverage-classic-map{display:flex!important;flex-direction:column!important;min-width:0;border:0!important;padding:0!important;margin:0!important;background:#213026!important;overflow:hidden}
:root[data-theme] .coverage-classic .map-panel.coverage-classic-map #leaflet-map{display:block;flex:1;height:525px!important;min-height:525px!important;width:100%!important;z-index:1}
:root[data-theme] .coverage-classic .classic-map-caption{min-height:55px;display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;justify-content:space-between;padding:11px 16px;background:#243228;border:1px solid #455344;border-top:0;color:#ded3bc}
:root[data-theme] .coverage-classic .classic-map-caption>span{font:650 10px 'DM Sans',sans-serif;letter-spacing:.08em;color:#ddcaaa!important}
:root[data-theme] .coverage-classic .classic-map-caption .map-legend{display:flex;gap:12px;flex-wrap:wrap;margin:0;padding:0;background:transparent!important}
:root[data-theme] .coverage-classic .classic-map-caption .map-legend span{font:10px 'DM Sans',sans-serif;color:#f1e8d8!important}
:root[data-theme] .coverage-classic .classic-map-caption small{font:10px 'DM Sans',sans-serif;color:#cec6b8!important}
@media(max-width:950px){:root[data-theme] .coverage-classic .yeshen-map-layout.classic-map-layout{grid-template-columns:minmax(270px,.43fr) minmax(0,.57fr)!important;gap:12px!important}:root[data-theme] .coverage-classic .map-information.coverage-classic-sidebar{padding:25px 22px!important}:root[data-theme] .coverage-classic .classic-coverage-container{width:calc(100% - 32px)}}
@media(max-width:700px){:root[data-theme] .coverage-classic .yeshen-map-layout.classic-map-layout{grid-template-columns:1fr!important}:root[data-theme] .coverage-classic .classic-coverage-container{width:calc(100% - 28px)}:root[data-theme] .coverage-classic .map-panel.coverage-classic-map #leaflet-map{height:370px!important;min-height:370px!important}:root[data-theme] .coverage-classic .map-information.coverage-classic-sidebar{padding:26px 22px!important}:root[data-theme] .coverage-classic .classic-city-list{max-height:300px}:root[data-theme] .coverage-classic .classic-map-caption{gap:8px}}
@media(max-width:400px){:root[data-theme] .coverage-classic .classic-city-row{gap:9px;padding:12px 0!important}:root[data-theme] .coverage-classic .classic-city-badge{font-size:9px!important;padding:6px 7px}:root[data-theme] .coverage-classic .classic-city-info small{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){:root[data-theme] .coverage-classic .classic-city-row{transition:none}}
/* Old scroll-reveal transform shifted map columns 28px below their grid area. */
:root[data-theme] .coverage-classic .map-information.coverage-classic-sidebar,
:root[data-theme] .coverage-classic .map-panel.coverage-classic-map{
  opacity:1!important;
  transform:none!important;
  translate:none!important;
}


/* Public therapist shift labels: understated luxury, accessible light/dark contrast. */
:root[data-theme] .team-grid .team-card .therapist-caption {display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}
:root[data-theme] .team-grid .team-card .therapist-caption h3 {margin:0!important}
:root[data-theme] .team-grid .team-card .therapist-availability,
:root[data-theme] .therapist-dialog-info .therapist-availability {
  display:inline-flex!important;align-items:center;justify-content:flex-start;gap:8px;
  width:max-content;max-width:100%;min-height:26px;padding:5px 10px;border-radius:3px;
  border:1px solid #d8c8ae;background:#f0e7d9;color:#393228!important;
  font:600 11px/1.25 'DM Sans',Arial,sans-serif!important;letter-spacing:.035em;
  text-transform:none;white-space:normal;opacity:1!important;
}
:root[data-theme] .therapist-availability i {
  display:block;flex:0 0 7px;width:7px;height:7px;border-radius:50%;
  background:#ab834e;box-shadow:none;
}
:root[data-theme='light'] .therapist-availability.is-off-duty,
:root[data-theme='light'] .therapist-availability.is-unavailable,
:root[data-theme='light'] .therapist-availability.is-unknown {background:#ebe7e0;border-color:#d4cec4;color:#4e4942!important}
:root[data-theme='light'] .therapist-availability.is-busy {background:#efe1d7;border-color:#d9bdae;color:#633e30!important}
:root[data-theme='dark'] .team-grid .team-card .therapist-availability,
:root[data-theme='dark'] .therapist-dialog-info .therapist-availability {background:#332b21;border-color:#75634b;color:#f4e1c5!important}
:root[data-theme='dark'] .therapist-availability.is-off-duty,
:root[data-theme='dark'] .therapist-availability.is-unavailable,
:root[data-theme='dark'] .therapist-availability.is-unknown {background:#2b2926!important;border-color:#514c45!important;color:#e4dcd0!important}
:root[data-theme='dark'] .therapist-availability.is-busy {background:#3b2c25!important;border-color:#7f5746!important;color:#f0d7c6!important}
:root[data-theme] .therapist-availability.is-off-duty i,
:root[data-theme] .therapist-availability.is-unavailable i,
:root[data-theme] .therapist-availability.is-unknown i {background:#827e78}
:root[data-theme] .therapist-availability.is-busy i {background:#a66b4e}
:root[data-theme] .therapist-dialog-info .therapist-availability {margin:5px 0 9px}
:root[data-theme] .therapist-dialog-info .therapist-duty-note {
  font:400 12px/1.55 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-ink)!important;opacity:.75;margin:1px 0 16px;
}
@media(max-width:480px) {
  :root[data-theme] .team-grid .team-card .therapist-caption {gap:6px}
  :root[data-theme] .team-grid .team-card .therapist-availability {font-size:10px!important;min-height:24px;padding:4px 8px}
}


/* YESHEN V3.8 — centered identity, legible public inquiries, no public gallery. */
:root[data-theme] body:not(.is-admin) .site-header .brand {
  display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:10px!important;line-height:1!important;min-height:44px;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .nav-logo{
  display:block!important;width:40px!important;height:40px!important;flex:0 0 40px!important;
  object-fit:cover!important;object-position:50% 50%!important;
  margin:0!important;padding:0!important;border-radius:50%!important;
  border:1px solid #bca77f!important;position:static!important;
  transform:none!important;vertical-align:middle!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span {
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  align-items:flex-start!important;gap:3px!important;line-height:1.04!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span em{
  display:block!important;font-size:8px!important;line-height:1.3!important;
  letter-spacing:.13em!important;
}
:root[data-theme] .admin-side-brand-link .nav-logo,
:root[data-theme] .admin-login-brand .nav-logo {
  width:38px!important;height:38px!important;object-fit:cover!important;
  object-position:center!important;border-radius:50%!important;
  display:block!important;flex-shrink:0!important;margin:0!important;
}
:root[data-theme] .admin-side-brand-link {align-items:center!important}
:root[data-theme] .admin-photo-editor {
  margin-top:22px;border:1px solid var(--hairline, #cbbdac);
  background:var(--panel-bg,var(--surface,#f7f4ee));border-radius:7px;
  overflow:hidden;
}
:root[data-theme] .admin-photo-editor > summary {
  cursor:pointer;padding:21px 25px;display:flex;flex-wrap:wrap;
  align-items:baseline;justify-content:space-between;gap:8px 20px;
  color:var(--copy,#302a24);list-style:none;
}
:root[data-theme] .admin-photo-editor > summary::-webkit-details-marker{display:none}
:root[data-theme] .admin-photo-editor > summary::after{content:'＋';font-size:19px;color:#b39160}
:root[data-theme] .admin-photo-editor[open] > summary::after{content:'−'}
:root[data-theme] .admin-photo-editor > summary:focus-visible{outline:2px solid #bb9864;outline-offset:-4px}
:root[data-theme] .admin-photo-editor .admin-photo-editor-title{font-weight:700;font-size:17px}
:root[data-theme] .admin-photo-editor .admin-photo-editor-help{
  font-size:12px;line-height:1.5;opacity:.88;
}
:root[data-theme] .admin-photo-editor > .admin-panel{margin:0!important;border:0!important;border-top:1px solid var(--hairline,#cbbdac)!important;border-radius:0!important}
:root[data-theme] .therapist-dialog .v38-dialog-lead {
  font:400 15px/1.75 'DM Sans',Arial,sans-serif!important;
  max-width:43ch;margin:10px 0 19px!important;color:var(--v34-ink)!important;
}
:root[data-theme] .therapist-dialog .v3-inquiry-message{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  background:#f2ece3!important;border:1px solid #d4c2a7!important;
  border-left:3px solid #ad8b55!important;
  border-radius:5px!important;padding:19px 20px!important;margin:12px 0 19px!important;
  box-shadow:none!important;max-width:100%;overflow:hidden;
}
:root[data-theme] .therapist-dialog .v3-inquiry-message .v38-inquiry-label{
  color:#71583b!important;opacity:1!important;
  font:700 10px/1.4 'DM Sans',Arial,sans-serif!important;letter-spacing:.14em!important;
}
:root[data-theme] .therapist-dialog .v3-inquiry-message p{
  margin:14px 0 16px!important;max-width:100%;
  color:#27221d!important;font:500 15px/1.8 'DM Sans',Arial,sans-serif!important;
  letter-spacing:0!important;overflow-wrap:break-word!important;
}
:root[data-theme] .therapist-dialog .v3-inquiry-message button{
  cursor:pointer;align-self:flex-start;min-height:38px!important;
  padding:9px 16px!important;border:1px solid #a78c65!important;border-radius:3px;
  background:#241d17!important;color:#fff7eb!important;
  font:700 12px/1.2 'DM Sans',Arial,sans-serif!important;letter-spacing:.01em!important;
  text-transform:none!important;
}
:root[data-theme] .therapist-dialog .v3-inquiry-message button:hover,
:root[data-theme] .therapist-dialog .v3-inquiry-message button:focus-visible {
  background:#55402b!important;color:#fff!important;outline-offset:3px;
}
:root[data-theme='dark'] .therapist-dialog .v3-inquiry-message{
  background:#28231e!important;border-color:#7f6b52!important;border-left-color:#c5a575!important;
}
:root[data-theme='dark'] .therapist-dialog .v3-inquiry-message .v38-inquiry-label{color:#ddc396!important}
:root[data-theme='dark'] .therapist-dialog .v3-inquiry-message p{color:#f8efe4!important}
:root[data-theme='dark'] .therapist-dialog .v3-inquiry-message button{background:#d6b78b!important;color:#231b14!important}
:root[data-theme='dark'] .therapist-dialog .v3-inquiry-message button:hover{background:#f2d9b4!important}
:root[data-theme] .therapist-dialog .v3-inquiry-disclaimer {
  display:block;margin-top:18px!important;font:400 12px/1.7 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-ink)!important;opacity:.85;
}
:root[data-theme] .yeshen-v2-book .social-contact-intro > p,
:root[data-theme] .v3-contact-grid > div > p {
  color:var(--v34-ink)!important;opacity:.88!important;
  font:400 clamp(14px,1.5vw,16px)/1.8 'DM Sans',Arial,sans-serif!important;
}
:root[data-theme] .yeshen-v2-book .social-link small,
:root[data-theme] .v3-contact-grid .social-link small {
  font:500 12px/1.5 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-ink)!important;opacity:.86!important;
}
:root[data-theme] .v3-contact-grid .social-link b {
  color:var(--v34-ink)!important;font-weight:600!important;
}
:root[data-theme] .social-contact-footnote,
:root[data-theme] .v3-contact-foot{
  color:var(--v34-ink)!important;opacity:.8!important;
  font:400 12px/1.7 'DM Sans',Arial,sans-serif!important;
}
@media(max-width:650px){
  :root[data-theme] body:not(.is-admin) .site-header .brand .nav-logo{width:34px!important;height:34px!important;flex-basis:34px!important}
  :root[data-theme] .therapist-dialog .v3-inquiry-message{padding:15px 16px!important}
  :root[data-theme] .therapist-dialog .v3-inquiry-message p{font-size:14px!important}
  :root[data-theme] .admin-photo-editor > summary{padding:18px}
}


/* YESHEN V3.9: Haplos-inspired editorial navigation with original black/ivory/gold branding.
   Responsive alignment only; no externally borrowed assets. */
:root[data-theme] body:not(.is-admin) .site-header {
  height:80px!important;min-height:80px!important;
  background:var(--v34-bg)!important;border-bottom:1px solid var(--v34-line)!important;
  backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .nav-wrap {
  width:min(1320px,calc(100% - 72px))!important;max-width:1320px!important;
  padding:0!important;margin-inline:auto!important;min-height:80px!important;
  height:80px!important;display:flex!important;align-items:center!important;gap:28px!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand {
  flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;
  justify-content:flex-start!important;gap:13px!important;min-width:0!important;
  text-decoration:none!important;white-space:nowrap!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .nav-logo{
  width:49px!important;height:49px!important;flex:0 0 49px!important;
  display:block!important;object-fit:cover!important;object-position:center!important;
  border-radius:50%!important;margin:0!important;padding:0!important;
  background:#0b0907!important;border:1px solid #876940!important;
  box-shadow:0 0 0 3px rgba(187,150,93,.08)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span{
  font:500 29px/.88 'Cormorant Garamond',Georgia,serif!important;
  letter-spacing:.005em!important;display:flex!important;flex-direction:column!important;
  justify-content:center!important;align-items:flex-start!important;gap:7px!important;
  color:var(--v34-ink)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span em{
  font:600 9px/1.2 'DM Sans',Arial,sans-serif!important;
  letter-spacing:.23em!important;color:var(--v34-accent)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .desktop-nav{
  margin-left:auto!important;display:flex;align-items:center;justify-content:flex-end;
  gap:clamp(15px,2vw,31px)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .desktop-nav a{
  padding:12px 0!important;font:600 12px/1.3 'DM Sans',Arial,sans-serif!important;
  letter-spacing:.005em!important;color:var(--v34-ink)!important;text-transform:none!important;
  opacity:.92!important;white-space:nowrap;
}
:root[data-theme] body:not(.is-admin) .site-header .desktop-nav a:hover,
:root[data-theme] body:not(.is-admin) .site-header .desktop-nav a.active {
  color:var(--v34-accent)!important;opacity:1!important;
}
:root[data-theme] body:not(.is-admin) .site-header .desktop-nav a:after {
  bottom:5px!important;background:var(--v34-accent)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .nav-actions {
  display:flex!important;align-items:center!important;gap:11px!important;flex:0 0 auto!important;
}
:root[data-theme] body:not(.is-admin) .site-header .theme-toggle{
  min-height:42px!important;min-width:78px!important;border-radius:3px!important;
  padding:8px 12px!important;background:transparent!important;
  border:1px solid var(--v34-line)!important;color:var(--v34-ink)!important;
  box-shadow:none!important;
}
:root[data-theme] body:not(.is-admin) .site-header .theme-toggle:hover{
  background:var(--v34-paper)!important;transform:none!important;
}
:root[data-theme] body:not(.is-admin) .site-header .nav-book {
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-width:156px!important;min-height:43px!important;padding:10px 15px!important;
  border-radius:3px!important;background:var(--v34-button)!important;
  border:1px solid var(--v34-button)!important;color:var(--v34-button-text)!important;
  font:700 10px/1.2 'DM Sans',Arial,sans-serif!important;letter-spacing:.1em!important;
  text-transform:uppercase!important;gap:17px!important;box-shadow:none!important;
}
:root[data-theme] body:not(.is-admin) .site-header .nav-book:hover {
  opacity:.89!important;transform:none!important;
}
:root[data-theme='dark'] body:not(.is-admin) .site-header {
  background:#14110e!important;border-bottom-color:#4b3b2c!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header {
  background:#f8f5ef!important;border-bottom-color:#ded5c7!important;
}
@supports selector(body:has(main)) {
 :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header{
   background:#f8f5ef!important;border-bottom-color:#ded5c7!important;
 }
 :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span,
 :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .desktop-nav a {
   color:#282019!important;
 }
 :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span em{color:#927348!important}
 :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .theme-toggle {
   color:#282019!important;border-color:#d6c7b2!important;
 }
 :root[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header{
   background:rgba(19,16,13,.96)!important;border-bottom-color:#534332!important;
 }
}
@media(max-width:1100px){
 :root[data-theme] body:not(.is-admin) .site-header .nav-wrap{width:calc(100% - 44px)!important;gap:16px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{font-size:26px!important}
 :root[data-theme] body:not(.is-admin) .site-header .desktop-nav{gap:14px!important}
 :root[data-theme] body:not(.is-admin) .site-header .desktop-nav a{font-size:11px!important}
 :root[data-theme] body:not(.is-admin) .site-header .nav-book{min-width:136px!important;padding-inline:10px!important}
}
@media(max-width:950px){
 :root[data-theme] body:not(.is-admin) .site-header .desktop-nav{display:none!important}
 :root[data-theme] body:not(.is-admin) .site-header .nav-wrap{width:calc(100% - 36px)!important}
 :root[data-theme] body:not(.is-admin) .site-header .menu-toggle{display:block!important;color:var(--v34-ink)!important;border-color:var(--v34-line)!important}
}
@media(max-width:650px){
 :root[data-theme] body:not(.is-admin) .site-header{height:70px!important;min-height:70px!important}
 :root[data-theme] body:not(.is-admin) .site-header .nav-wrap{height:70px!important;min-height:70px!important;width:calc(100% - 30px)!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand{gap:9px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand .nav-logo{width:39px!important;height:39px!important;flex-basis:39px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{font-size:23px!important;gap:5px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand > span em{font-size:7px!important;letter-spacing:.15em!important}
 :root[data-theme] body:not(.is-admin) .site-header .nav-book{display:none!important}
 :root[data-theme] body:not(.is-admin) .site-header .theme-toggle{min-width:42px!important;min-height:40px!important;padding:6px!important}
 :root[data-theme] body:not(.is-admin) .site-header .theme-toggle-label{display:none!important}
}
@media(max-width:360px){
 :root[data-theme] body:not(.is-admin) .site-header .nav-wrap{gap:8px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{font-size:21px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand .nav-logo{width:34px!important;height:34px!important;flex-basis:34px!important}
 :root[data-theme] body:not(.is-admin) .site-header .nav-actions{gap:6px!important}
}

/* V3.9 coverage: unify public map with black, ivory, muted gold in both modes.
   Keep searchable directory, status semantics and Leaflet map unchanged. */
:root[data-theme='dark'] .coverage-classic{
  --yc-bg:#100f0d;--yc-side:#1c1916;--yc-panel:#221d18;--yc-input:#151310;
  --yc-line:#514535;--yc-text:#f7f0e5;--yc-muted:#c6b9a5;--yc-note:#29231c;
  --yc-selected:#31291f;--yc-pills:#3a2d1f;
}
:root[data-theme='light'] .coverage-classic{
  --yc-bg:#f8f5ef;--yc-side:#fffdf8;--yc-panel:#f3ede4;--yc-input:#fbf7f0;
  --yc-line:#d7cabb;--yc-text:#27221c;--yc-muted:#6e6255;--yc-note:#f1e9dc;
  --yc-selected:#efe3d2;--yc-pills:#e7d3b5;
}
:root[data-theme] .yeshen-v2-coverage.coverage-classic {
  background:var(--yc-bg)!important;color:var(--yc-text)!important;
  border-top:1px solid var(--yc-line)!important;
}
:root[data-theme] .coverage-classic .map-information.coverage-classic-sidebar{
  background:var(--yc-side)!important;color:var(--yc-text)!important;
  border:1px solid var(--yc-line)!important;
}
:root[data-theme] .coverage-classic .coverage-classic-sidebar h3,
:root[data-theme] .coverage-classic .classic-search-label,
:root[data-theme] .coverage-classic .classic-city-row,
:root[data-theme] .coverage-classic .classic-city-info strong,
:root[data-theme] .coverage-classic .classic-empty-coverage strong,
:root[data-theme] .coverage-classic .classic-selected-result strong {
  color:var(--yc-text)!important;
}
:root[data-theme] .coverage-classic .coverage-classic-sidebar .classic-coverage-kicker,
:root[data-theme] .coverage-classic .classic-map-caption>span,
:root[data-theme] .coverage-classic .classic-city-pin {
  color:var(--v34-accent)!important;
}
:root[data-theme] .coverage-classic .classic-search-wrap{
  background:var(--yc-input)!important;border:1px solid var(--yc-line)!important;
}
:root[data-theme] .coverage-classic .classic-search-wrap input{
  color:var(--yc-text)!important;
}
:root[data-theme] .coverage-classic .classic-search-wrap input::placeholder,
:root[data-theme] .coverage-classic .classic-city-info small,
:root[data-theme] .coverage-classic .classic-empty-coverage p,
:root[data-theme] .coverage-classic .classic-no-match,
:root[data-theme] .coverage-classic .classic-selected-result span,
:root[data-theme] .coverage-classic .classic-selected-result small,
:root[data-theme] .coverage-classic .classic-coverage-notice p,
:root[data-theme] .coverage-classic .classic-map-caption small {
  color:var(--yc-muted)!important;
}
:root[data-theme] .coverage-classic .classic-city-row{
  border-bottom:1px solid var(--yc-line)!important;color:var(--yc-text)!important;
}
:root[data-theme] .coverage-classic .classic-city-row:hover,
:root[data-theme] .coverage-classic .classic-city-row.is-selected{
  background:var(--yc-selected)!important;
}
:root[data-theme] .coverage-classic .classic-city-list{
  scrollbar-color:#a88859 transparent!important;
}
:root[data-theme] .coverage-classic .classic-city-badge.available{
  background:var(--yc-pills)!important;color:var(--yc-text)!important;
  border:1px solid #b99b70!important;
}
:root[data-theme] .coverage-classic .classic-city-badge.limited {
  background:var(--yc-selected)!important;color:var(--yc-text)!important;
  border:1px solid #aa8b5f!important;
}
:root[data-theme] .coverage-classic .classic-city-badge.unavailable{
  background:var(--yc-selected)!important;color:var(--yc-text)!important;
  border:1px solid #94665d!important;
}
:root[data-theme] .coverage-classic .coverage-result.classic-selected-result{
  background:var(--yc-note)!important;border-color:var(--yc-line)!important;
  border-left:3px solid var(--v34-accent)!important;color:var(--yc-text)!important;
}
:root[data-theme] .coverage-classic .classic-coverage-notice{
  background:var(--yc-note)!important;border:1px solid var(--yc-line)!important;
}
:root[data-theme] .coverage-classic .classic-coverage-notice strong {
  color:var(--yc-text)!important;
}
:root[data-theme] .coverage-classic .classic-coverage-contact{
  color:var(--yc-text)!important;border-bottom:1px solid var(--v34-accent)!important;
}
:root[data-theme] .coverage-classic .classic-coverage-contact:hover {
  color:var(--v34-accent)!important;
}
:root[data-theme] .coverage-classic .map-panel.coverage-classic-map{
  background:var(--yc-panel)!important;border:1px solid var(--yc-line)!important;
}
:root[data-theme] .coverage-classic .classic-map-caption{
  background:var(--yc-side)!important;border:1px solid var(--yc-line)!important;
  border-top:0!important;color:var(--yc-text)!important;
}
:root[data-theme] .coverage-classic .classic-map-caption .map-legend span{
  color:var(--yc-muted)!important;
}
:root[data-theme] .coverage-classic .map-dot.available{background:#c5a16b!important}
:root[data-theme] .coverage-classic .map-dot.limited{background:#a98151!important}
:root[data-theme] .coverage-classic .map-dot.unavailable{background:#916a62!important}
:root[data-theme] .coverage-classic .classic-search-check{color:var(--v34-accent)!important}
:root[data-theme] .coverage-classic .classic-city-badge i{background:currentColor!important}
:root[data-theme] .coverage-classic .map-placeholder {
  background:var(--yc-panel)!important;color:var(--yc-text)!important;
}
/* Older green-coded states in admin coverage controls are also brought into the brand palette. */
:root[data-theme] body.is-admin .coverage-state.available {
  color:#b88f59!important;border-color:#b88f59!important;
}
:root[data-theme] body.is-admin .coverage-state.limited{
  color:#caa77a!important;border-color:#b49460!important;
}
:root[data-theme] body.is-admin .coverage-result.result-available{border-left-color:#b88f59!important}
:root[data-theme] body.is-admin .map-dot.available{background:#c5a16b!important}

/* V4.0 — editable social booking instructions; clear separation at every breakpoint. */
:root[data-theme] .yeshen-v2-book .social-contact-footnote {
  display:flex!important;align-items:flex-start!important;gap:14px!important;
  max-width:620px!important;margin:27px 0 0!important;padding:18px 0 0!important;
  border-top:1px solid var(--v34-line)!important;
  color:var(--v34-copy)!important;opacity:1!important;
}
:root[data-theme] .yeshen-v2-book .social-contact-footnote .footnote-star {
  flex:0 0 auto!important;color:var(--v34-accent)!important;
  font-size:23px!important;line-height:1.1!important;
}
:root[data-theme] .yeshen-v2-book .social-contact-footnote p {
  margin:0!important;font:400 13px/1.8 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-copy)!important;opacity:1!important;overflow-wrap:anywhere;
}
:root[data-theme] .v33-book-steps {
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;margin:clamp(28px,5vw,65px) auto 0!important;
  padding:clamp(26px,4vw,48px) 0 clamp(10px,2vw,20px)!important;
  border-top:1px solid var(--v34-line)!important;
  align-items:start!important;color:var(--v34-ink)!important;
}
:root[data-theme] .v33-book-steps .v33-book-step {
  display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;
  column-gap:13px!important;row-gap:10px!important;align-content:start!important;
  margin:0!important;padding:4px clamp(12px,2vw,28px)!important;
  background:transparent!important;min-width:0!important;
  border-right:1px solid var(--v34-line)!important;
}
:root[data-theme] .v33-book-steps .v33-book-step:first-child {padding-left:0!important}
:root[data-theme] .v33-book-steps .v33-book-step:last-child {border-right:0!important}
:root[data-theme] .v33-book-steps .v33-book-step-number {
  display:block!important;grid-column:1!important;grid-row:1/span 2!important;
  font:600 12px/1.65 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-accent)!important;letter-spacing:.09em!important;
}
:root[data-theme] .v33-book-steps .v33-book-step strong {
  display:block!important;grid-column:2!important;grid-row:1!important;
  font:600 clamp(15px,1.4vw,18px)/1.4 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-ink)!important;overflow-wrap:anywhere!important;
}
:root[data-theme] .v33-book-steps .v33-book-step small {
  display:block!important;grid-column:2!important;grid-row:2!important;
  font:400 13px/1.75 'DM Sans',Arial,sans-serif!important;letter-spacing:0!important;
  color:var(--v34-copy)!important;overflow-wrap:anywhere!important;
}
:root[data-theme] body.is-admin .yeshen-booking-editor {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 24px;
}
:root[data-theme] body.is-admin .yeshen-booking-editor-step {
  min-width:0!important;margin:0!important;padding:16px!important;
  border:1px solid var(--ad-border)!important;border-radius:6px!important;
  background:var(--ad-alt)!important;
}
:root[data-theme] body.is-admin .yeshen-booking-editor-step legend {
  padding:0 7px!important;color:var(--ad-ink)!important;
  font:700 11px/1.4 'DM Sans',Arial,sans-serif!important;
}
:root[data-theme] body.is-admin .yeshen-booking-editor-step .field {min-width:0!important}
@media(max-width:1000px) {
  :root[data-theme] body.is-admin .yeshen-booking-editor {grid-template-columns:1fr!important}
}
@media(max-width:720px) {
  :root[data-theme] .v33-book-steps {
    grid-template-columns:1fr!important;margin-top:28px!important;padding-top:15px!important;
  }
  :root[data-theme] .v33-book-steps .v33-book-step,
  :root[data-theme] .v33-book-steps .v33-book-step:first-child {
    grid-template-columns:31px minmax(0,1fr)!important;gap:6px 13px!important;
    border-right:0!important;border-bottom:1px solid var(--v34-line)!important;
    padding:17px 0!important;
  }
  :root[data-theme] .v33-book-steps .v33-book-step:last-child {border-bottom:0!important}
}


/* YESHEN V4.1 — applied approved enlarged and centered header identity.
   Never force a pale wordmark against the ivory light-mode navigation bar. */
:root[data-theme] body:not(.is-admin) .site-header,
:root[data-theme] body:not(.is-admin) .site-header .nav-wrap {
  min-height:86px!important;height:86px!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand {
  display:inline-flex!important;align-items:center!important;
  gap:15px!important;min-height:64px!important;
  flex:0 0 auto!important;white-space:nowrap!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal {
  display:grid!important;place-items:center!important;
  flex:0 0 62px!important;width:62px!important;height:62px!important;
  min-width:62px!important;min-height:62px!important;
  background:#050403!important;border:1px solid #a17a46!important;
  border-radius:50%!important;overflow:hidden!important;position:relative!important;
  box-shadow:0 0 0 2px rgba(195,160,108,.11)!important;
  padding:0!important;margin:0!important;
  transform:none!important;line-height:0!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal .nav-logo {
  display:block!important;position:relative!important;
  width:100%!important;height:100%!important;max-width:none!important;
  max-height:none!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:0!important;border:0!important;
  border-radius:50%!important;object-fit:cover!important;object-position:50% 50%!important;
  background:transparent!important;box-shadow:none!important;
  transform:scale(1.075)!important;transform-origin:center center!important;
  vertical-align:middle!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span {
  display:flex!important;flex-direction:column!important;
  align-items:flex-start!important;justify-content:center!important;
  gap:7px!important;min-height:56px!important;
  font:500 32px/.95 'Cormorant Garamond',Georgia,serif!important;
  letter-spacing:.012em!important;opacity:1!important;
  text-shadow:none!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span em {
  display:block!important;font:600 10px/1.35 'DM Sans',Arial,sans-serif!important;
  font-style:normal!important;letter-spacing:.22em!important;opacity:1!important;
}
/* Cover earlier hero-only :has() rules that made YESHEN nearly white on an ivory bar. */
:root[data-theme='light'] body:not(.is-admin) .site-header .brand > span:not(em),
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span:not(em) {
  color:#82552d!important;-webkit-text-fill-color:#82552d!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .brand > span em,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span em {
  color:#855d33!important;-webkit-text-fill-color:#855d33!important;
}
:root[data-theme='dark'] body:not(.is-admin) .site-header .brand > span:not(em),
:root[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span:not(em) {
  color:#f2e5d2!important;-webkit-text-fill-color:#f2e5d2!important;
}
:root[data-theme='dark'] body:not(.is-admin) .site-header .brand > span em,
:root[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span em {
  color:#d9ba8e!important;-webkit-text-fill-color:#d9ba8e!important;
}
@media(max-width:1100px) {
 :root[data-theme] body:not(.is-admin) .site-header .brand {gap:11px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal{
   flex-basis:54px!important;width:54px!important;height:54px!important;
   min-width:54px!important;min-height:54px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{
   font-size:29px!important;gap:6px!important;
 }
}
@media(max-width:650px) {
 :root[data-theme] body:not(.is-admin) .site-header,
 :root[data-theme] body:not(.is-admin) .site-header .nav-wrap {
   min-height:72px!important;height:72px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand {
   gap:9px!important;min-height:48px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal {
   flex-basis:46px!important;width:46px!important;height:46px!important;
   min-width:46px!important;min-height:46px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{
   font-size:24px!important;gap:4px!important;min-height:46px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand > span em{
   font-size:7px!important;letter-spacing:.16em!important;
 }
}
@media(max-width:360px) {
 :root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal {
   flex-basis:42px!important;width:42px!important;height:42px!important;
   min-width:42px!important;min-height:42px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand > span {font-size:22px!important}
}


/* YESHEN V4.1 — approved centered-logo header.
   Historical ivory navigation is now restricted to light theme only.
   Supersedes legacy homepage rules which set ivory header text to white. */
:root[data-theme='light'] body:not(.is-admin) .site-header,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header {
  background:#f8f5ef!important;
  color:#272019!important;
  border-bottom:1px solid #e3d6c3!important;
  box-shadow:0 1px 0 rgba(58,42,24,.03)!important;
  backdrop-filter:blur(15px)!important;
  -webkit-backdrop-filter:blur(15px)!important;
  height:88px!important;
  min-height:88px!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .nav-wrap{
  display:flex!important;
  align-items:center!important;
  height:88px!important;
  min-height:88px!important;
  width:min(1200px,calc(100% - 60px))!important;
  max-width:1200px!important;
  gap:24px!important;
  margin-inline:auto!important;
  padding:0!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .brand {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex:0 0 auto!important;
  gap:15px!important;
  min-width:0!important;
  line-height:1!important;
  text-decoration:none!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .brand .nav-logo{
  display:block!important;
  flex:0 0 64px!important;
  width:64px!important;
  height:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid #a68755!important;
  border-radius:50%!important;
  clip-path:circle(50% at 50%)!important;
  background:#080604!important;
  object-fit:cover!important;
  object-position:50% 50%!important;
  transform:none!important;
  box-shadow:0 0 0 2px #ede3d5!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .brand > span,
:root[data-theme='light'] body:not(.is-admin) .site-header .brand > span:not(em),
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span:not(em){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:7px!important;
  color:#876333!important;
  font-family:'Cormorant Garamond',Georgia,serif!important;
  font-weight:600!important;
  font-size:32px!important;
  letter-spacing:.012em!important;
  line-height:.88!important;
  text-shadow:none!important;
  opacity:1!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .brand > span em,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span em{
  display:block!important;
  color:#715537!important;
  font:700 9px/1.3 'DM Sans',Arial,sans-serif!important;
  letter-spacing:.21em!important;
  text-transform:uppercase!important;
  opacity:1!important;
  white-space:nowrap!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav{
  margin-left:auto!important;
  gap:clamp(18px,1.75vw,28px)!important;
  align-items:center!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav a,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .desktop-nav a,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header a:not(.nav-book){
  color:#312922!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav a:hover,
:root[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav a.active{
  color:#876333!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .theme-toggle,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .theme-toggle{
  color:#312922!important;
  border:1px solid #d8c6af!important;
  background:transparent!important;
  box-shadow:none!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .theme-toggle:hover {
  background:#eee5d7!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .nav-book {
  background:#2a211b!important;
  color:#fff7ed!important;
  border:1px solid #2a211b!important;
  box-shadow:none!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .nav-book:hover {
  background:#463429!important;
  border-color:#463429!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .menu-toggle,
:root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .menu-toggle{
  color:#312922!important;
  border-color:#d8c6af!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .mobile-nav{
  background:#f8f5ef!important;
  color:#312922!important;
  border-top:1px solid #e3d6c3!important;
}
:root[data-theme='light'] body:not(.is-admin) .site-header .mobile-nav a{
  color:#312922!important;
}
@media (max-width:1100px) {
  :root[data-theme='light'] body:not(.is-admin) .site-header .nav-wrap{
    width:calc(100% - 44px)!important;
    gap:17px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand .nav-logo{
    flex-basis:58px!important;width:58px!important;height:58px!important;
    max-width:58px!important;max-height:58px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand > span,
  :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span:not(em){
    font-size:29px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav{gap:14px!important}
}
@media (max-width:950px) {
  :root[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav{display:none!important}
  :root[data-theme='light'] body:not(.is-admin) .site-header .nav-wrap{width:calc(100% - 36px)!important}
}
@media (max-width:650px) {
  :root[data-theme='light'] body:not(.is-admin) .site-header,
  :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header{
    height:74px!important;min-height:74px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .nav-wrap{
    height:74px!important;min-height:74px!important;
    width:calc(100% - 30px)!important;gap:12px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand{gap:10px!important}
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand .nav-logo{
    flex-basis:50px!important;width:50px!important;height:50px!important;
    max-width:50px!important;max-height:50px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand > span,
  :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span:not(em){
    font-size:25px!important;gap:6px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand > span em{
    font-size:7px!important;letter-spacing:.17em!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .nav-book{display:none!important}
  :root[data-theme='light'] body:not(.is-admin) .site-header .nav-actions{gap:8px!important}
}
@media (max-width:370px) {
  :root[data-theme='light'] body:not(.is-admin) .site-header .nav-wrap{width:calc(100% - 22px)!important;gap:7px!important}
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand .nav-logo{
    flex-basis:45px!important;width:45px!important;height:45px!important;max-width:45px!important;max-height:45px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand > span,
  :root[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand span:not(em){
    font-size:22px!important;
  }
  :root[data-theme='light'] body:not(.is-admin) .site-header .brand > span em{
    font-size:6.5px!important;letter-spacing:.13em!important;
  }
}


/* YESHEN V4.2 — compact header, authentic centered seal, and coherent themes.
   Root cause: older :has(home hero) overrides forced ivory styling in dark mode. */
:root[data-theme] body:not(.is-admin) .site-header,
:root[data-theme] body:not(.is-admin) .site-header .nav-wrap {
  height:78px!important;min-height:78px!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand {
  gap:11px!important;min-height:54px!important;align-items:center!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal {
  width:54px!important;height:54px!important;
  min-width:54px!important;min-height:54px!important;flex:0 0 54px!important;
  display:grid!important;place-items:center!important;
  border-radius:50%!important;background:#070605!important;
  overflow:hidden!important;margin:0!important;padding:0!important;
  border:1px solid #a88655!important;box-shadow:0 0 0 2px rgba(193,163,118,.08)!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal .nav-logo {
  display:block!important;width:100%!important;height:100%!important;
  max-width:none!important;max-height:none!important;
  object-fit:cover!important;object-position:center center!important;
  border:0!important;border-radius:50%!important;
  transform:scale(1.055)!important;transform-origin:50% 50%!important;
  margin:0!important;padding:0!important;box-shadow:none!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span {
  font:500 28px/.95 'Cormorant Garamond',Georgia,serif!important;
  letter-spacing:.008em!important;gap:5px!important;min-height:50px!important;
  display:flex!important;align-items:flex-start!important;justify-content:center!important;
  flex-direction:column!important;white-space:nowrap!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand > span em {
  font:600 9px/1.3 'DM Sans',Arial,sans-serif!important;
  letter-spacing:.17em!important;white-space:nowrap!important;
}
/* Explicit theme-specific headers win over every prior generalized hero rule. */
html[data-theme='dark'] body:not(.is-admin) .site-header,
html[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header {
  background:#14110e!important;background-color:#14110e!important;
  border-bottom-color:#4c3d2b!important;color:#f6ede0!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header,
html[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header {
  background:#f8f5ef!important;background-color:#f8f5ef!important;
  border-bottom-color:#ded4c6!important;color:#272018!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .desktop-nav a,
html[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .desktop-nav a{
  color:#f1e8da!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav a,
html[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .desktop-nav a {
  color:#29221c!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .brand > span,
html[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span {
  color:#f0e0c8!important;-webkit-text-fill-color:#f0e0c8!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header .brand > span,
html[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span {
  color:#76502b!important;-webkit-text-fill-color:#76502b!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .brand > span em,
html[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span em{
  color:#d6b888!important;-webkit-text-fill-color:#d6b888!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header .brand > span em,
html[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .brand > span em{
  color:#82623e!important;-webkit-text-fill-color:#82623e!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .theme-toggle,
html[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .theme-toggle,
html[data-theme='dark'] body:not(.is-admin) .site-header .menu-toggle {
  color:#f5e9d6!important;border-color:#66513a!important;background:#201a14!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header .theme-toggle,
html[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header .theme-toggle,
html[data-theme='light'] body:not(.is-admin) .site-header .menu-toggle {
  color:#30241b!important;border-color:#d3c3ac!important;background:transparent!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .nav-book{
  background:#d1af7d!important;color:#1c140b!important;border-color:#d1af7d!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header .nav-book{
  background:#2d221a!important;color:#fff5e4!important;border-color:#2d221a!important;
}
/* Accessible, photographic poster composition based on the approved reference. */
:root[data-theme] .v2-social-art .yeshen-peace-poster {
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:flex-start!important;gap:0!important;
  width:100%!important;max-width:510px!important;
  min-height:0!important;margin-inline:auto!important;
  position:relative!important;padding:29px 30px 27px!important;
  border:2px solid #a38251!important;background:#120d09!important;
  color:#edcf9b!important;overflow:hidden!important;
  box-shadow:0 20px 60px rgba(0,0,0,.15)!important;
}
:root[data-theme] .v2-social-art .yeshen-peace-poster::before {
  content:''!important;position:absolute!important;inset:12px!important;
  pointer-events:none!important;border:1px solid rgba(204,166,103,.65)!important;
}
:root[data-theme] .yeshen-peace-poster .peace-top-ornament {
  display:block!important;font:italic 30px/1 Georgia,serif!important;
  text-align:center!important;color:#bd985d!important;margin:0 auto 12px!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-heading{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  width:100%!important;padding:0 4px!important;margin:0 auto 12px!important;
  color:#e8c58b!important;position:relative!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-heading span {
  display:block!important;font:italic 500 clamp(43px,5.5vw,70px)/.98 'Cormorant Garamond',Georgia,serif!important;
  letter-spacing:-.045em!important;white-space:nowrap!important;color:#e8c58b!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-heading strong{
  display:block!important;font:500 clamp(31px,4vw,52px)/1 'Cormorant Garamond',Georgia,serif!important;
  letter-spacing:.04em!important;align-self:flex-start!important;color:#edcb92!important;
  margin:6px 0 0!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-emblem {
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-width:0!important;margin:0 auto 16px!important;
  background:transparent!important;position:relative!important;z-index:1!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-emblem img{
  width:min(100%,385px)!important;max-width:385px!important;height:auto!important;
  display:block!important;aspect-ratio:1!important;object-fit:contain!important;
  margin:0 auto!important;padding:0!important;border:0!important;border-radius:50%!important;
  filter:none!important;opacity:1!important;transform:none!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-photo {
  display:block!important;position:relative!important;z-index:1!important;width:100%!important;
  margin:0 auto 3px!important;overflow:hidden!important;
  aspect-ratio:1.65!important;background:#1a120c!important;
}
:root[data-theme] .yeshen-peace-poster .peace-poster-photo img{
  display:block!important;width:100%!important;max-width:none!important;height:100%!important;
  aspect-ratio:auto!important;object-fit:cover!important;object-position:center!important;
  filter:none!important;border-radius:0!important;transform:none!important;
}
:root[data-theme] .yeshen-peace-poster .v33-art-label,
:root[data-theme] .yeshen-peace-poster .v33-art-signature {display:none!important}
html[data-theme='light'] .v2-social-art .yeshen-peace-poster,
html[data-theme='dark'] .v2-social-art .yeshen-peace-poster {
  background:#120d09!important;color:#e8c58b!important;
}
/* Framed poster is intentionally black in both themes; the surrounding page follows the theme. */
@media(max-width:950px) {
 :root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal{
   width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;flex-basis:48px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{font-size:26px!important}
}
@media(max-width:650px){
 :root[data-theme] body:not(.is-admin) .site-header,
 :root[data-theme] body:not(.is-admin) .site-header .nav-wrap{height:68px!important;min-height:68px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand{gap:8px!important;min-height:44px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal{
   width:43px!important;height:43px!important;min-width:43px!important;min-height:43px!important;flex-basis:43px!important;
 }
 :root[data-theme] body:not(.is-admin) .site-header .brand > span{font-size:23px!important;gap:4px!important;min-height:43px!important}
 :root[data-theme] body:not(.is-admin) .site-header .brand > span em{font-size:7px!important;letter-spacing:.12em!important}
 :root[data-theme] .v2-social-art .yeshen-peace-poster{
   padding:25px 19px 20px!important;max-width:400px!important;
 }
 :root[data-theme] .yeshen-peace-poster .peace-poster-heading span{font-size:clamp(35px,10vw,49px)!important}
 :root[data-theme] .yeshen-peace-poster .peace-poster-heading strong{font-size:clamp(28px,8vw,38px)!important}
}


/* V4.2 artwork-ready enhancement: when the supplied exact poster asset is
   committed, it overlays the accessible responsive layout without JS or a flash. */
:root[data-theme] .yeshen-peace-poster{isolation:isolate!important}
:root[data-theme] .yeshen-peace-poster::after{
  content:''!important;display:block!important;position:absolute!important;
  inset:0!important;z-index:5!important;pointer-events:none!important;
  background: url('/assets/yeshen-peace-poster.svg') center center / 100% 100% no-repeat!important;
}
@media(max-width:700px){
  :root[data-theme] .yeshen-v2-book .v2-social-art.v33-social-art{
    display:flex!important;flex-direction:column!important;
    width:100%!important;max-width:440px!important;margin:24px auto 0!important;
    justify-content:center!important;
  }
  :root[data-theme] .yeshen-v2-book .v2-social-art .yeshen-peace-poster{
    width:100%!important;max-width:410px!important;margin:auto!important;
  }
}


/* V4.3: poster asset generated at build, correct proportions even before it loads. */
:root[data-theme] .yeshen-v2-book .v2-social-art .yeshen-peace-poster{
  position:relative!important;display:block!important;width:100%!important;
  aspect-ratio:941/1672!important;height:auto!important;max-width:490px!important;
  min-height:0!important;padding:0!important;margin:0 auto!important;
  background:#110c08!important;border:0!important;border-radius:0!important;
  box-shadow:0 24px 70px #0003!important;overflow:hidden!important;
}
:root[data-theme] .yeshen-peace-poster::before{display:none!important;content:none!important}
:root[data-theme] .yeshen-peace-poster::after{
  content:''!important;display:block!important;
  background: url('/assets/yeshen-peace-poster.svg') center / contain no-repeat!important;
  position:absolute!important;inset:0!important;z-index:10!important;
  opacity:1!important;pointer-events:none!important;
}
:root[data-theme] .yeshen-peace-poster > * {visibility:hidden!important}
@media(max-width:700px){
  :root[data-theme] .yeshen-v2-book .v2-social-art.v33-social-art{
    display:flex!important;align-items:center!important;margin-top:30px!important;
  }
  :root[data-theme] .yeshen-v2-book .v2-social-art .yeshen-peace-poster{width:100%!important;max-width:370px!important}
}


/* V4.3 final public-header priority after other rules. */
html[data-theme='dark'] body:not(.is-admin) .site-header,
html[data-theme='dark'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header{
  background:#14110e!important;background-color:#14110e!important;
  color:#f4ebdc!important;border-bottom:1px solid #55432f!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header,
html[data-theme='light'] body:not(.is-admin):has(.yeshen-v3-hero) .site-header{
  background:#f8f5ef!important;background-color:#f8f5ef!important;
  color:#2b231b!important;border-bottom:1px solid #d4c3ae!important;
}
:root[data-theme] body:not(.is-admin) .site-header,
:root[data-theme] body:not(.is-admin) .site-header .nav-wrap {height:75px!important;min-height:75px!important}
:root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal{
  width:52px!important;height:52px!important;flex-basis:52px!important;
  min-width:52px!important;min-height:52px!important;
  display:grid!important;place-items:center!important;border-radius:50%!important;
}
:root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal img{
  width:100%!important;height:100%!important;object-fit:cover!important;
  object-position:center!important;transform:scale(1.05)!important;
  margin:0!important;padding:0!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .desktop-nav a,
html[data-theme='dark'] body:not(.is-admin) .site-header .brand > span{
  color:#efe3d2!important;-webkit-text-fill-color:#efe3d2!important;
}
html[data-theme='light'] body:not(.is-admin) .site-header .desktop-nav a,
html[data-theme='light'] body:not(.is-admin) .site-header .brand > span{
  color:#392a1d!important;-webkit-text-fill-color:#392a1d!important;
}
html[data-theme='dark'] body:not(.is-admin) .site-header .brand > span em{color:#dbb985!important;-webkit-text-fill-color:#dbb985!important}
html[data-theme='light'] body:not(.is-admin) .site-header .brand > span em{color:#926e45!important;-webkit-text-fill-color:#926e45!important}
@media(max-width:650px){
  :root[data-theme] body:not(.is-admin) .site-header,
  :root[data-theme] body:not(.is-admin) .site-header .nav-wrap {height:68px!important;min-height:68px!important}
  :root[data-theme] body:not(.is-admin) .site-header .brand .brand-seal{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;flex-basis:42px!important;
  }
}


/* YESHEN V4.7 — platform-independent vector icons; no iOS emoji substitution. */
.yeshen-icon{
  display:inline-block!important;width:1em!important;height:1em!important;
  vertical-align:-.13em!important;flex-shrink:0!important;
  fill:none!important;color:inherit!important;stroke:currentColor!important;
  font-family:Arial,sans-serif!important;
}
.yeshen-icon.yeshen-spark{
  width:19px!important;height:19px!important;vertical-align:middle!important;
}
.theme-toggle-icon{display:inline-flex!important;justify-content:center!important;align-items:center!important}
.theme-toggle-icon .yeshen-icon{width:18px!important;height:18px!important}
.admin-theme-switch .yeshen-icon{width:15px!important;height:15px!important}
.social-link .social-icon .yeshen-icon{width:19px!important;height:19px!important}
.v3-portrait-button .team-info > span .yeshen-icon{width:18px!important;height:18px!important}
.mobile-nav .yeshen-icon{width:14px!important;height:14px!important}
.mobile-bottom-book .yeshen-arrow{width:17px!important;height:17px!important}
.v33-online-head .v33-spark,.social-contact-footnote .footnote-star{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  color:var(--v34-accent)!important;font-size:0!important;line-height:1!important;
}
.v33-online-head .v33-spark .yeshen-spark,
.social-contact-footnote .footnote-star .yeshen-spark{width:19px!important;height:19px!important}
/* Avoid system font fallback for any remaining typographic Unicode symbols. */
.site-header,.social-link,.mobile-bottom-book{font-variant-emoji:text}
@media(max-width:700px){
  html,body{max-width:100%;overflow-x:clip}
  :root[data-theme] body:not(.is-admin) .mobile-bottom-book{
    left:16px!important;right:16px!important;
    bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;max-width:none!important;
    height:48px!important;min-height:48px!important;
    padding:0 18px!important;font-size:10px!important;
    letter-spacing:.08em!important;border-radius:28px!important;
    z-index:55!important;box-shadow:0 6px 22px rgba(0,0,0,.28)!important;
  }
  :root[data-theme] body:not(.is-admin) main{
    padding-bottom:calc(65px + env(safe-area-inset-bottom,0px))!important;
  }
  :root[data-theme] .v33-book-steps{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  }
  :root[data-theme] .v33-book-steps .v33-book-step{
    display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;
    width:100%!important;min-width:0!important;
    column-gap:12px!important;row-gap:8px!important;
  }
  :root[data-theme] .v33-book-steps .v33-book-step > strong,
  :root[data-theme] .v33-book-steps .v33-book-step > small{
    display:block!important;grid-column:2!important;min-width:0!important;
    line-height:1.55!important;
  }
}


/* V4.7 iOS contact micro-steps: no run-on labels on narrow Safari viewports. */
:root[data-theme] .v3-contact-page .v33-contact-micro {
  display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;
  gap:12px 19px!important;margin:22px 0 18px!important;padding:19px 0!important;
  border-top:1px solid var(--v34-line)!important;border-bottom:1px solid var(--v34-line)!important;
}
:root[data-theme] .v3-contact-page .v33-contact-micro span{
  display:block!important;flex:0 1 auto!important;min-width:0!important;
  font:600 11px/1.55 'DM Sans',Arial,sans-serif!important;
  color:var(--v34-quiet)!important;letter-spacing:.08em!important;
  white-space:normal!important;overflow-wrap:anywhere!important;
}
@media(max-width:700px){
  :root[data-theme] .v3-contact-page .v33-contact-micro{
    flex-direction:column!important;align-items:stretch!important;gap:10px!important;
  }
  :root[data-theme] .v3-contact-page .v33-contact-micro span{
    display:block!important;width:100%!important;
  }
  html:has(.site-header .mobile-nav) .mobile-bottom-book {display:none!important}
}


/* YESHEN V5 — customer reviews, only explicitly approved feedback. */
:root[data-theme] body:not(.is-admin) .yeshen-reviews-section{
  padding:clamp(66px,8vw,112px) 0;background:var(--v34-bg)!important;
  color:var(--v34-ink)!important;border-block:1px solid var(--v34-line);
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:24px;margin:0 0 38px;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-kicker{
  display:block;margin:18px 0 13px;font:700 10px/1.5 'DM Sans',sans-serif;
  letter-spacing:.19em;color:var(--v34-accent);
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-head h2{
  margin:0 0 13px;font:500 clamp(39px,5.1vw,69px)/1.02 'Cormorant Garamond',Georgia,serif!important;
  letter-spacing:-.027em;color:var(--v34-ink)!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-head h2 em{
  color:var(--v34-accent);font-weight:400;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-head p{
  margin:0;font:400 13px/1.75 'DM Sans',sans-serif!important;color:var(--v34-copy)!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-more{
  display:inline-flex;align-items:center;gap:10px;white-space:nowrap;
  font:700 11px/1.4 'DM Sans',sans-serif;text-decoration:none;
  color:var(--v34-ink)!important;padding-bottom:10px;border-bottom:1px solid var(--v34-accent);
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-more-mobile{display:none}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-card{
  background:var(--v34-paper);border:1px solid var(--v34-line);
  display:flex;flex-direction:column;min-width:0;overflow:hidden;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-screenshot{
  display:flex;align-items:center;justify-content:center;background:#14110e;
  min-height:170px;max-height:430px;overflow:hidden;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-screenshot img{
  display:block;max-width:100%;max-height:430px;width:auto;height:auto;
  object-fit:contain;margin-inline:auto;filter:none!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-content{
  padding:28px;display:flex;flex:1;flex-direction:column;gap:17px;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-stars{
  display:flex;gap:3px;color:var(--v34-accent);font:500 17px/1 Arial,sans-serif;
  font-variant-emoji:text!important;letter-spacing:1px;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-content blockquote{
  border:0;margin:0;padding:0;color:var(--v34-ink)!important;
  font:400 clamp(21px,2.1vw,26px)/1.42 'Cormorant Garamond',Georgia,serif;
  overflow-wrap:anywhere;white-space:pre-line;
}
:root[data-theme] body:not(.is-admin) .yeshen-review-meta{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:9px;
  padding-top:15px;margin-top:auto;border-top:1px solid var(--v34-line);
  font:600 11px/1.6 'DM Sans',sans-serif;color:var(--v34-copy);
}
:root[data-theme] body:not(.is-admin) .yeshen-review-meta time{
  font-weight:400;color:var(--v34-quiet);
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-empty{
  padding:52px 24px;text-align:center;background:var(--v34-paper);
  border:1px solid var(--v34-line);color:var(--v34-copy);
  font:400 13px/1.8 'DM Sans',sans-serif;
}
@media(max-width:950px){
 :root[data-theme] body:not(.is-admin) .yeshen-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
 :root[data-theme] body:not(.is-admin) .yeshen-reviews-section{padding:60px 0}
 :root[data-theme] body:not(.is-admin) .yeshen-reviews-head{align-items:flex-start}
 :root[data-theme] body:not(.is-admin) .yeshen-reviews-head>.yeshen-reviews-more{display:none}
 :root[data-theme] body:not(.is-admin) .yeshen-reviews-more-mobile{display:inline-flex;margin-top:25px}
 :root[data-theme] body:not(.is-admin) .yeshen-reviews-grid{grid-template-columns:1fr;gap:13px}
 :root[data-theme] body:not(.is-admin) .yeshen-review-content{padding:24px}
}


/* YESHEN V5.1 — compact reviews preview and a single clear full-list action. */
:root[data-theme] body:not(.is-admin) .yeshen-reviews-all-wrap{
  display:flex!important;justify-content:center!important;
  align-items:center!important;margin:30px auto 0!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-all-btn{
  display:inline-flex!important;align-items:center!important;
  justify-content:center!important;gap:16px!important;
  min-height:48px!important;padding:13px 25px!important;
  border:1px solid var(--v34-accent)!important;border-radius:3px!important;
  color:var(--v34-ink)!important;background:transparent!important;
  font:700 11px/1.3 'DM Sans',Arial,sans-serif!important;
  letter-spacing:.095em!important;text-decoration:none!important;
  text-transform:uppercase!important;transition:background .2s ease,color .2s ease!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-all-btn:hover{
  background:var(--v34-paper)!important;color:var(--v34-ink)!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-all-btn:focus-visible{
  outline:2px solid var(--v34-accent)!important;outline-offset:4px!important;
}
:root[data-theme] body:not(.is-admin) .yeshen-reviews-all-btn .yeshen-icon{
  width:15px!important;height:15px!important;
}
@media(max-width:650px){
  :root[data-theme] body:not(.is-admin) .yeshen-reviews-all-btn{
    width:100%!important;max-width:350px!important;min-height:48px!important;
  }
}
