/* Free museum days banner (home page, places list) and the "Free days here" box on museum place pages.
   A tear-off day calendar: today's sheet peels away and shows the next free day underneath, with a red stamp. */
.fmp-promo{margin-block:46px}
.fmp-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:38px;padding:34px 38px;background:#18110d;background-image:radial-gradient(ellipse at 12% 0%,#e7b34a2e 0%,transparent 55%),radial-gradient(ellipse at 100% 100%,#d23a2c26 0%,transparent 50%);color:#fff8ea;text-decoration:none;border-radius:6px;overflow:hidden;isolation:isolate}
.fmp-card:hover .fmp-cta{background:#f6d488}
.fmp-pad{position:relative;width:150px;height:176px;margin-bottom:12px;perspective:900px;flex:none}
.fmp-rings{position:absolute;top:-6px;left:10px;right:10px;z-index:4;display:flex;justify-content:space-between}
.fmp-rings i{width:9px;height:26px;border:3px solid #c9c1b5;border-radius:6px}
.fmp-sheet{position:absolute;inset:8px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#fffcf3;color:#1e1915;border-radius:3px 3px 8px 8px;border-top:20px solid #d23a2c;box-shadow:0 14px 30px #0008}
.fmp-sheet small{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6b625a}
.fmp-sheet b{font:900 64px/.95 Arial,sans-serif;letter-spacing:-.06em}
.fmp-sheet em{position:absolute;right:-22px;bottom:-14px;padding:6px 9px;border:3px double #d23a2c;border-radius:6px;color:#d23a2c;font:900 15px/1 Arial,sans-serif;font-style:normal;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-14deg);background:#fffcf3e6;animation:fmp-stamp .5s cubic-bezier(.2,1.6,.4,1) 1.9s both}
.fmp-sheet.is-peel{z-index:3;transform-origin:50% 0;animation:fmp-peel 1.6s cubic-bezier(.5,0,.3,1) .5s forwards}
.fmp-sheet.is-peel b{color:#a69d92}
.fmp-copy{display:flex;flex-direction:column;gap:10px;min-width:0}
.fmp-tag{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e7b34a}
.fmp-title{font:400 clamp(28px,3vw,42px)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.02em}
.fmp-text{font-size:14px;line-height:1.7;color:#d9cbb8;max-width:560px}
.fmp-next{display:block;padding:10px 12px;border-left:4px solid #1f9d55;background:#ffffff10;font-size:13px;line-height:1.5}
.fmp-next b{color:#9fe0b8}
.fmp-always{font-size:12px;color:#d9cbb8}
.fmp-cta{align-self:flex-start;margin-top:4px;padding:13px 18px;background:#e7b34a;color:#18110d;font-size:13px;font-weight:800;border-radius:2px;transition:background .2s}
.fmp-photos{position:relative;height:230px}
.fmp-photos img{position:absolute;width:62%;height:72%;object-fit:cover;border:6px solid #3a2a1c;box-shadow:inset 0 0 0 2px #7d5b2c,0 16px 30px #000a}
.fmp-photos .is-0{left:0;top:4%;transform:rotate(-6deg)}
.fmp-photos .is-1{right:0;top:0;transform:rotate(5deg)}
.fmp-photos .is-2{left:20%;bottom:0;transform:rotate(-1deg);z-index:1}
@keyframes fmp-peel{0%{transform:rotateX(0) rotateZ(0);opacity:1}55%{transform:rotateX(70deg) rotateZ(-4deg);opacity:1}100%{transform:rotateX(120deg) translateY(-30px) rotateZ(-8deg);opacity:0}}
@keyframes fmp-stamp{0%{opacity:0;transform:rotate(-30deg) scale(2.2)}100%{opacity:1;transform:rotate(-14deg) scale(1)}}
@media(max-width:1000px){.fmp-card{grid-template-columns:auto minmax(0,1fr)}.fmp-photos{display:none}}
@media(max-width:620px){.fmp-card{grid-template-columns:minmax(0,1fr);padding:26px 20px;gap:24px}.fmp-pad{width:124px;height:148px}.fmp-sheet b{font-size:52px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion=running]) .fmp-sheet.is-peel{display:none}html:not([data-motion=running]) .fmp-sheet em{animation:none}}

/* "Free days here" on a museum's place page. */
.fmx-box{margin:34px 0;padding:24px 24px 20px;background:#fffcf3;border:1px solid #e2d9c6;border-top:6px solid #d23a2c;border-radius:4px}
.fmx-kicker{margin:0 0 4px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#d23a2c}
.fmx-box h2{margin:0 0 14px;font:400 26px/1.15 Georgia,serif}
.fmx-always{margin:0 0 12px;font-size:15px;line-height:1.6}
.fmx-dates{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.fmx-dates li{display:flex;gap:12px;align-items:center;padding:8px;border:1px solid #e2d9c6;border-left:5px solid #1f9d55;border-radius:4px;background:#fff}
.fmx-dates li.is-residents{border-left-color:#2f66c9}.fmx-dates li.is-card{border-left-color:#7b45d6}.fmx-dates li.is-groups{border-left-color:#e07a1f}
.fmx-date{display:flex;flex-direction:column;align-items:center;min-width:62px;padding:4px;background:#f6f0e2;border-radius:3px}
.fmx-date small{font-size:9px;font-weight:700;text-transform:lowercase;color:#6b625a}
.fmx-date b{font:900 26px/1 Arial,sans-serif}
.fmx-rule{display:flex;flex-direction:column;font-size:12px;line-height:1.4;color:#6b625a}
.fmx-rule b{color:#1e1915;font-size:13px}
.fmx-more{font-size:13px;font-weight:800;color:#d23a2c}
.fmx-standing{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:6px}
.fmx-standing li{padding-left:12px;border-left:4px solid #2f66c9;font-size:13px;line-height:1.5;color:#4a423b}
.fmx-standing b{color:#1e1915}
