/* Shared with the main Plum Village theme (already cached site-wide). */
@font-face{font-family:'PV Sans Serif';font-style:normal;font-weight:300;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-light-text.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-light-text.woff') format('woff');}
@font-face{font-family:'PV Sans Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-regular.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-regular.woff') format('woff');}
@font-face{font-family:'PV Sans Serif';font-style:normal;font-weight:500;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-medium.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-medium.woff') format('woff');}
@font-face{font-family:'PV Sans Serif';font-style:normal;font-weight:600;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-semibold.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-semibold.woff') format('woff');}
@font-face{font-family:'PV Sans Serif';font-style:normal;font-weight:700;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-bold.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/pv-sans-serif-bold.woff') format('woff');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-regular.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-regular.woff') format('woff');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-italic.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-italic.woff') format('woff');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-600.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-600.woff') format('woff');}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:700;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-600.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-600.woff') format('woff');}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:700;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-700italic.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/cormorant-garamond-v16-vietnamese_latin-700italic.woff') format('woff');}
@font-face{font-family:'Gentium Plus';font-style:normal;font-weight:400;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-400-normal.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-400-normal.woff') format('woff');}
@font-face{font-family:'Gentium Plus';font-style:italic;font-weight:400;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-400-italic.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-400-italic.woff') format('woff');}
@font-face{font-family:'Gentium Plus';font-style:normal;font-weight:700;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-700-normal.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-700-normal.woff') format('woff');}
@font-face{font-family:'Gentium Plus';font-style:italic;font-weight:700;font-display:swap;src:url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-700-italic.woff2') format('woff2'),url('/wp-content/themes/plumvillage/dist/fonts/gentium-plus-latin-700-italic.woff') format('woff');}
*{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:#F3EDE1;font-family:'PV Sans Serif',system-ui,sans-serif;font-size:20px;color:#2A1814;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
  h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;text-wrap:balance;}
  p{text-wrap:pretty;}
  blockquote{font-family:'Gentium Plus',serif;text-wrap:pretty;}
  ::selection{background:#C7D2B5;color:#2A1814;}
  ::-webkit-scrollbar{width:11px;height:11px;}
  ::-webkit-scrollbar-track{background:#FBF5EA;}
  ::-webkit-scrollbar-thumb{background:#2D5A4A;border:3px solid #FBF5EA;border-radius:6px;}
  @keyframes plumFillW{0%{width:0;}100%{width:62.4%;}}
  @keyframes treeGrow{0%{height:0;}100%{height:100%;}}
  @keyframes revealMask{0%{transform:scaleY(1);}100%{transform:scaleY(0);}}
  @keyframes treeWipe{0%{clip-path:inset(100% 0 0 0);}100%{clip-path:inset(0 0 0 0);}}
  @keyframes heroEnter{0%{opacity:0;transform:translateY(22px);}100%{opacity:1;transform:translateY(0);}}
  @keyframes cardSlide{0%{opacity:0;transform:translateX(14px);}100%{opacity:1;transform:translateX(0);}}
  @keyframes plumShimmer{0%,100%{opacity:.35;}50%{opacity:.85;}}
  @keyframes plumBloom{0%{opacity:0;transform:scale(.4) translateY(6px);}60%{opacity:1;}100%{opacity:1;transform:scale(1) translateY(0);}}
  @keyframes petalFloat{0%{transform:translateY(30px) rotate(0deg);opacity:0;}12%{opacity:.6;}80%{opacity:.5;}100%{transform:translateY(-150px) rotate(70deg);opacity:0;}}
  @keyframes glowDrift{0%,100%{transform:translate(0,0) scale(1);opacity:.45;}50%{transform:translate(22px,-16px) scale(1.12);opacity:.72;}}
  @keyframes sheenSweep{0%{transform:translateX(-150%) skewX(-16deg);}55%,100%{transform:translateX(180%) skewX(-16deg);}}
  @keyframes badgeShimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
  @keyframes softBob{0%,100%{transform:translateY(0);}50%{transform:translateY(-5px);}}
  @keyframes treeSway{0%,100%{transform:rotate(-1.4deg);}50%{transform:rotate(1.4deg);}}
  @keyframes treeRise{0%{transform:scaleY(.04);opacity:0;}60%{opacity:1;}100%{transform:scaleY(1);opacity:1;}}
  @keyframes tilePop{0%{opacity:0;transform:scale(.82) translateY(14px);}60%{opacity:1;}100%{opacity:1;transform:scale(1) translateY(0);}}
  @keyframes blossomIn{0%{opacity:0;transform:translateY(20px) scale(.92);}100%{opacity:1;transform:translateY(0) scale(1);}}
  @keyframes vidCaption{0%{opacity:0;}12%{opacity:1;}80%{opacity:1;}100%{opacity:0;}}
  @keyframes blossomFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}
  @keyframes dotPulse{0%,100%{transform:scale(1);opacity:.55;}50%{transform:scale(1.5);opacity:1;}}
  @keyframes underlineShimmer{0%{background-position:0% 0;}100%{background-position:200% 0;}}
  @keyframes marqueeL{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
  @keyframes marqueeR{0%{transform:translateX(-50%);}100%{transform:translateX(0);}}
  /* premium image treatment */
  img{image-rendering:auto;}
  /* interactive button feel — React serializes inline styles with spaces + rgb() */
  [style*="border-radius: 40px"][style*="cursor: pointer"]{transition:transform .22s cubic-bezier(.22,1,.36,1), box-shadow .25s ease, background-color .2s ease, filter .2s ease;}
  [style*="border-radius: 40px"][style*="cursor: pointer"]:hover{transform:translateY(-2px);box-shadow:0 16px 32px -18px rgba(42,24,20,.55);}
  [style*="1.5px solid rgb(138, 24, 56)"][style*="border-radius: 40px"]:hover{background-color:rgba(138,24,56,.08);}
  [style*="1.5px solid rgb(45, 90, 74)"][style*="border-radius: 40px"]:hover{background-color:rgba(45,90,74,.07);}
  [style*="border-radius: 11px"][style*="cursor: pointer"]{transition:transform .22s cubic-bezier(.22,1,.36,1), box-shadow .25s ease, filter .2s ease;}
  [style*="border-radius: 11px"][style*="cursor: pointer"]:hover{transform:translateY(-2px);box-shadow:0 18px 34px -16px rgba(42,24,20,.5);filter:saturate(1.05) brightness(1.03);}
  /* thumbnail / gallery frame lift */
  [style*="cursor: pointer"][style*="object-fit: cover"]:hover{filter:brightness(1.03);}
  /* responsive reflow — targets React-serialized inline grid signatures */
  @media(max-width:1200px){
    [style*="grid-template-columns: minmax(0px, 1.45fr)"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: minmax(0px, 1.12fr)"]{grid-template-columns:1fr!important;}
    /* species showcase keeps its side-by-side layout down to phone width */
    [style*="grid-template-columns: 236px 1fr"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: 260px 1fr"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: minmax(0px, 1fr) 220px"]{grid-template-columns:1fr!important;}
    /* centered nav wordmark shrinks as space tightens */
    img[data-wm="pv"]{height:27px!important;}
  }
  @media(max-height:760px){
    /* short viewports: narrower donate pop-up so the photo and CTA both fit */
    [style*="max-width: 540px"][style*="flex-direction: column"]{max-width:420px!important;}
  }
  @media(max-height:620px){
    [style*="max-width: 540px"][style*="flex-direction: column"]{max-width:360px!important;}
  }
  @media(max-width:900px){
    /* hamlet giving tiles stack cleanly instead of leaving New Hamlet orphaned */
    [data-hamlet-tiles]{grid-template-columns:1fr!important;}
  }
  @media(max-width:680px){
    /* scrolling copy: same rhythm, phone gutters */
    [data-off-pair]{padding-left:22px!important;padding-right:22px!important;justify-content:center!important;}
    [data-off-pair] > div,[data-off-pair] > p{max-width:100%!important;text-align:center!important;}
  }
  @media(max-width:680px){
    /* Root Temple: tighter title-to-body and less space above it */
    [id="s-roots"]{margin-top:56px!important;margin-bottom:0!important;}
    [style*="max-width: 1100px"][style*="minmax(0px, 420px)"]{margin-top:18px!important;}
    /* Support a Hamlet: less green above the title */
    [id="s-support"]{margin-top:56px!important;}
    [id="s-support"] > div{margin-top:26px!important;}
    [id="s-support"] > div > div[style*="padding: 52px 6px 0"]{padding-top:10px!important;}
    /* map pins: smaller numbers on phones */
    [alt*="illustrated masterplan"] ~ div > span[style*="width: 26px"]{width:19px!important;height:19px!important;font-size:9px!important;border-width:1px!important;}
    [alt*="illustrated masterplan"] ~ div > span[style*="width: 42px"]{width:30px!important;height:30px!important;}
    /* New Hamlet card: even padding, smaller plum mark tucked in the corner */
    [style*="padding: 36px 84px 28px 34px"]{padding:26px 22px 24px!important;}
    [style*="padding: 36px 84px 28px 34px"] > img[data-wm="mark"]{width:52px!important;right:14px!important;top:-18px!important;}
    /* Impact of your gift: title sits closer to the cards */
    [data-grw-scroll] [style*="height: clamp(200px"]{margin-top:-14vh!important;}
    [data-grw-scroll] [style*="padding: 104px 48px 0"]{padding-top:124px!important;padding-left:22px!important;padding-right:22px!important;}
  }
  @media(max-width:680px){
    /* Root Temple: tree + its legend stay side by side, and sit above the copy */
    [data-roots-grid]{grid-template-columns:1fr!important;gap:26px!important;padding-left:22px!important;padding-right:22px!important;}
    [data-roots-grid] > div:last-child{order:-1;}
    [data-roots-grid] > div:first-child > p{text-align:left!important;font-size:17.5px!important;line-height:1.7!important;}
    /* tree and its legend always sit side by side, never stacked */
    [data-cine-thermo]{gap:14px!important;align-items:stretch!important;flex-wrap:nowrap!important;}
    [data-cine-thermo] > div:first-child{height:auto!important;width:52%!important;flex:none!important;}
    [data-cine-thermo] > div:last-child{flex:1 1 0!important;min-width:0!important;padding-right:0!important;}
    [data-cine-thermo] > div:last-child span[style*="font-weight: 800"]{font-size:16.5px!important;white-space:nowrap!important;}
    [data-cine-thermo] > div:last-child span[style*="font-size: 14px"]{font-size:11.5px!important;}
    [data-cine-thermo] > div:last-child [style*="gap: 14px"]{gap:9px!important;}
    [data-cine-thermo] > div:last-child span[style*="width: 9px"]{width:7px!important;}
    /* video: copy docks at top (nav clearance via padding-top) */
    [data-video-inner]{gap:16px!important;padding:22px!important;padding-top:88px!important;justify-content:flex-start!important;}
    [data-video-inner] > p{max-width:100%!important;font-size:clamp(17px,4.6vw,22px)!important;}
    [data-video-inner] > div{margin:0 auto!important;}
    [data-video-inner] > div > div[style*="width: 78px"]{width:58px!important;height:58px!important;}
  }
  @media(max-width:700px){
    /* Lou's portrait sits beside the quote until the card gets truly narrow */
    [style*="grid-template-columns: 1fr 260px"]{grid-template-columns:1fr!important;}
  }
  @media(max-width:820px){
    [style*="grid-template-columns: repeat(4, minmax(0px, 1fr))"]{grid-template-columns:repeat(2, minmax(0px, 1fr))!important;}
    [style*="grid-template-columns: repeat(3, minmax(0px, 1fr))"]{grid-template-columns:repeat(2, minmax(0px, 1fr))!important;}
    [style*="grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr)"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: repeat(6, minmax(0px, 1fr))"]{grid-template-columns:repeat(3, minmax(0px, 1fr))!important;}
    [style*="column-count: 3"]{column-count:2!important;}
    [data-cine-thermo]{gap:24px!important;}
    [style*="grid-template-columns: minmax(0px, 1fr) minmax(0px, 420px)"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: minmax(0px, 1fr) 220px"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: 1fr auto"]{grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important;gap:16px!important;}
  }
  @media(max-width:560px){
    [style*="grid-template-columns: repeat(4, minmax(0px, 1fr))"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: repeat(3, minmax(0px, 1fr))"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: repeat(2, minmax(0px, 1fr))"]{grid-template-columns:1fr!important;}
    [style*="grid-template-columns: minmax(0px, 1fr) minmax(0px, 1.08fr)"]{grid-template-columns:1fr!important;}
    [style*="column-count: 3"]{column-count:1!important;}
    [style*="padding: 0px 48px"]{padding-left:22px!important;padding-right:22px!important;}
    [style*="padding: 56px 48px 0px"]{padding-left:22px!important;padding-right:22px!important;}
    [style*="padding: 46px 48px 10px"]{padding-left:22px!important;padding-right:22px!important;}
    /* match-fund card: tighter on phones */
    [style*="padding: 52px 56px"]{padding:30px 22px!important;gap:22px!important;}
  }
  @media(max-width:680px){
    /* scrolling copy: same rhythm, phone gutters */
    [data-off-pair]{padding-left:22px!important;padding-right:22px!important;justify-content:center!important;}
    [data-off-pair] > div,[data-off-pair] > p{max-width:100%!important;text-align:center!important;}
  }
  html{scroll-snap-type:y proximity;}
  [data-video-block]{scroll-snap-stop:always;}
  @container (max-width: 680px){
    /* nav bar sizing keyed to the BAR's own width, so it survives being framed */
    img[data-wm="rooted"]{display:none!important;}
    [data-mnav-panel] img[data-wm="rooted"]{display:block!important;}
    img[data-wm="pv"]{height:24px!important;}
    img[data-wm="mark"]{width:32px!important;}
    [data-mnav-btn]{display:flex!important;}
    /* NOTE: a @container rule cannot style the container itself, so bar padding lives
       in the matching @media block below — only child spacing is set here */
    [data-navbar] [style*="border-radius: 40px"][style*="cursor: pointer"]{padding:10px 22px!important;font-size:14px!important;}
    [data-menu-root]{margin-right:12px!important;}
    [data-menu-root] [style*="width: 300px"]{display:none!important;}
    /* the centred Plum Village wordmark is absolutely positioned and would sit under
       the Donate pill at these widths — it lives in the slide-in panel instead */
    /* the wordmark stays centred in the bar; it is sized so it can never reach the
       mark + hamburger group on its left or the Donate pill on its right */
    [data-navbar] > a[href="https://plumvillage.org/"]{display:block!important;}
    [data-navbar] > a[href="https://plumvillage.org/"] img[data-wm="pv"]{height:18px!important;}
    [data-navbar] [style*="border-radius: 40px"][style*="cursor: pointer"]{padding:9px 16px!important;font-size:13px!important;}
    [data-navbar]{justify-content:flex-start!important;gap:8px!important;}
    /* mark + hamburger group at the left, Donate holds the right edge */
    [data-navbar] > div:last-child{margin-left:0!important;flex-direction:row!important;flex:1!important;justify-content:flex-end!important;gap:12px!important;}
    [data-mnav-btn]{order:-1!important;margin-right:auto!important;margin-left:0!important;width:40px!important;height:40px!important;}
    [data-menu-root] > div{padding:2px 4px!important;gap:0!important;}
  }
  @media(max-width:680px){
    /* bar-level spacing (cannot live in the @container block above) */
    [data-navbar]{padding:8px 14px!important;gap:8px!important;justify-content:flex-start!important;}
    /* top menu bar */
    img[data-wm="rooted"]{width:150px!important;}
    img[data-wm="mark"]{width:32px!important;}
    img[data-wm="pv"]{height:26px!important;}
    [data-navbar]{padding-left:14px!important;padding-right:14px!important;}
    /* hero + gift stat lines: center and full width */
    [style*="max-width: 1320px"]{max-width:100%!important;justify-content:center!important;padding-left:24px!important;padding-right:24px!important;}
    [style*="max-width: 1320px"] > p{max-width:100%!important;text-align:center!important;}
    /* generic side padding trim */
    [style*="padding: 0px 48px"]{padding-left:22px!important;padding-right:22px!important;}
    [style*="padding: 64px 48px 0px"]{padding-left:22px!important;padding-right:22px!important;}
    [style*="padding: 52px 56px"]{padding:34px 24px!important;}
    [style*="padding: clamp(36px, 5vw, 64px)"]{padding:28px 22px!important;}
    /* match card + 3-col rows already reflow; tighten hamlet gate row */
    [style*="grid-template-columns: 220px minmax(0px, 1fr)"]{grid-template-columns:1fr!important;}
    /* hero heading: let it shrink well below its desktop floor */
    [style*="clamp(56px, 7.8vw, 92px)"]{font-size:clamp(34px,10vw,52px)!important;}
    [data-menu-root] > div > img[data-wm="rooted"]{display:none!important;}
    /* smaller nav donate button */
    [style*="position: sticky"][style*="z-index: 40"] [style*="border-radius: 40px"][style*="cursor: pointer"]{padding:10px 22px!important;font-size:14px!important;}
    /* donate popup: single column + tighter padding */

    /* map popup images shorter on mobile */
    [data-map-popup] img{height:220px!important;}
    /* mobile hamburger + slide-in nav */
    [data-mnav-btn]{display:flex!important;}
    /* only one wordmark in the bar once the hamburger appears — the centred
       Plum Village calligraphy would otherwise sit on top of Rooted Renewal */
    img[data-wm="rooted"]{display:none!important;}
    [data-mnav-panel] img[data-wm="rooted"]{display:block!important;}
    [data-menu-root] [style*="width: 300px"]{display:none!important;}
    /* the centred Plum Village wordmark is absolutely positioned and would sit under
       the Donate pill at these widths — it lives in the slide-in panel instead */
    /* the wordmark stays centred in the bar; it is sized so it can never reach the
       mark + hamburger group on its left or the Donate pill on its right */
    [data-navbar] > a[href="https://plumvillage.org/"]{display:block!important;}
    [data-navbar] > a[href="https://plumvillage.org/"] img[data-wm="pv"]{height:18px!important;}
    [data-navbar] [style*="border-radius: 40px"][style*="cursor: pointer"]{padding:9px 16px!important;font-size:13px!important;}
    [data-navbar]{justify-content:flex-start!important;gap:8px!important;}
    /* mark + hamburger group at the left, Donate holds the right edge */
    [data-navbar] > div:last-child{margin-left:0!important;flex-direction:row!important;flex:1!important;justify-content:flex-end!important;gap:12px!important;}
    [data-mnav-btn]{order:-1!important;margin-right:auto!important;margin-left:0!important;width:40px!important;height:40px!important;}
    [data-menu-root] > div{padding:2px 4px!important;gap:0!important;}
  }
  /* species showcase on mobile: full 4-across grid first, detail card right below */
  @media(max-width:820px){
    [data-species-grid]{grid-template-columns:repeat(4,minmax(0,1fr))!important;order:-1;gap:6px!important;}
    [data-species-grid] > div{padding:7px 4px 6px!important;gap:4px!important;border-radius:10px!important;}
    [data-species-grid] > div > div{height:34px!important;}
    [data-species-grid] img{height:34px!important;max-width:100%!important;}
    [data-species-grid] span{font-size:7px!important;letter-spacing:.02em!important;}
    [data-species-detail]{min-height:0!important;padding:24px 20px!important;}
    [data-species-detail] > div:first-child{height:118px!important;margin-bottom:14px!important;}
    [data-species-detail] img{height:118px!important;max-width:180px!important;}
    [data-species-detail] h4{font-size:26px!important;}
    [data-species-detail] p{font-size:16px!important;line-height:1.6!important;}
  }
  /* om-media background loops — cover-crop a 16:9 embed into sticky/banner frames */
  .pv-om-bg{position:absolute;inset:0;overflow:hidden;background:#211F12;pointer-events:none;}
  .pv-om-bg iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-height:100%;min-width:177.78vh;transform:translate(-50%,-50%);border:0;display:block;}
  /* tree thermometer: stay inside the funding column (tree + legend + gap ≤ 420px) */
  [data-roots-grid]{width:100%;box-sizing:border-box;}
  [data-roots-grid] > *{min-width:0;}
  [data-cine-thermo]{min-width:0;max-width:100%;width:100%;}
  [data-cine-thermo] > div:first-child{flex:0 1 auto!important;min-width:0!important;height:auto!important;width:auto!important;max-width:min(200px,42%)!important;aspect-ratio:1024/1536;align-self:stretch;}
  [data-cine-thermo] > div:last-child{min-width:0;flex:1 1 0;}
  /* FundraiseUp goal meter — single Element, CSS-pinned over match card or modal slot */
  .pv-fru-meter{width:100%;max-width:220px;min-height:66px;}
  .pv-fru-meter--overlay{position:fixed;z-index:35;max-width:none;pointer-events:auto;box-sizing:border-box;overflow:hidden;}
  .pv-fru-meter iframe,
  .pv-fru-meter [id^="XYXLNYZV"],
  .pv-fru-meter > *{width:100%!important;max-width:100%;}
  .pv-match-meter-slot{width:100%;min-height:120px;}
  /* FRU goal meter renders ~66px; keep slot tight so the overlay doesn’t hang past the dialog */
  .pv-donate-modal__meter-slot{width:100%;min-height:66px;margin:0;flex:none;}
  .pv-donate-modal[hidden]{display:none!important;}
  .pv-donate-modal{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;}
  .pv-donate-modal__backdrop{position:absolute;inset:0;background:rgba(30,24,18,.55);backdrop-filter:blur(3px);}
  .pv-donate-modal__dialog{position:relative;z-index:1;width:100%;max-width:540px;max-height:92vh;overflow:hidden;background:#FBF5EA;border:1px solid #D9CFBB;border-radius:20px;box-shadow:0 30px 80px rgba(30,24,18,.4);display:flex;flex-direction:column;}
  .pv-donate-modal__close{position:absolute;top:14px;right:16px;z-index:5;width:32px;height:32px;border-radius:50%;border:1px solid #D9CFBB;background:#FBF5EA;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;color:#857A66;padding:0;line-height:1;}
  .pv-donate-modal__close:hover{background:#F3EDE1;}
  .pv-donate-modal__photo{display:block;flex:none;width:100%;height:auto;background:#F3EDE1;border-radius:20px 20px 0 0;}
  .pv-donate-modal__body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 28px 28px;display:flex;flex-direction:column;gap:14px;}
  .pv-donate-modal__body h3{margin:0;font-family:'Cormorant Garamond',serif;font-size:29px;font-weight:700;line-height:1.06;color:#2A1814;}
  .pv-donate-modal__body p{margin:0;font-size:15.5px;line-height:1.62;color:#4A4035;}
  /* Actions sit outside the scroll region so Donate stays visible and the meter can’t cover the card edge */
  .pv-donate-modal__actions{position:relative;flex:none;margin:0;padding:8px 28px 22px;display:flex;flex-direction:column;gap:10px;background:#FBF5EA;}
  /* Soft fade where body text is clipped above the sticky Donate bar */
  .pv-donate-modal__actions::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:36px;pointer-events:none;background:linear-gradient(rgba(251,245,234,0),#FBF5EA);}
  .pv-donate-modal__donate{height:52px;border:0;border-radius:11px;background:#8A1838;color:#FBF5EA;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;}
  .pv-donate-modal__donate:hover{color:#FBF5EA;}
  @media(max-height:760px){
    .pv-donate-modal__dialog{max-width:420px!important;}
  }
  @media(max-height:620px){
    .pv-donate-modal__dialog{max-width:360px!important;}
  }
  @media(max-width:680px){
    [data-general-support]{grid-template-columns:1fr!important;justify-items:stretch;text-align:left;gap:16px!important;padding:20px 18px!important;}
    [data-general-support] > div:last-child{justify-self:stretch!important;white-space:normal!important;text-align:center;width:100%;box-sizing:border-box;}
  }
/* Hide cookie consent badge */
.cky-btn-revisit-wrapper{display:none!important;}
