/* Tienda de la Torre — restrained pastel editorial style */
.tldfw-workshops-section{width:calc(100% - 64px);max-width:1600px;margin:0 auto;padding:16px 0 54px;box-sizing:border-box}
.tldfw-section-title{font-family:inherit;font-size:clamp(30px,3.5vw,42px);line-height:1.15;text-align:center;margin:0 0 34px;color:#171717;font-weight:700;letter-spacing:-.025em}
.tldfw-store{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.tldfw-card{height:100%;min-width:0;background:#fff;border:1px solid #e8e2d8;border-radius:3px;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.tldfw-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(23,23,23,.08);border-color:#dfc9b6}
.tldfw-card-open{display:flex;width:100%;height:100%;min-height:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;flex-direction:column;font:inherit}
.tldfw-card-photo{display:block;width:100%;aspect-ratio:4/3;background:#f5f0e8;overflow:hidden}
.tldfw-card-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.tldfw-card:hover .tldfw-card-photo img{transform:scale(1.035)}
.tldfw-image-placeholder{height:100%;display:flex;align-items:center;justify-content:center;color:#82776c;font-family:Georgia,serif;font-size:20px}
.tldfw-card-content{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px 23px 24px}
.tldfw-card-title{display:block;min-height:2.5em;font-family:inherit;font-size:21px;line-height:1.25;font-weight:650;color:#171717;margin:0 0 10px}
.tldfw-card-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.55;color:#716b64;min-height:3.1em;max-height:3.1em}
.tldfw-card-price{display:block;margin-top:auto;padding-top:18px;font-size:17px;line-height:1.3;font-weight:700;color:#171717}
.tldfw-more{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 22px;margin-top:21px;background:#f4d78e;color:#171717;border:1px solid #f0d18a;border-radius:2px;font-size:11px;font-weight:700;letter-spacing:.09em;transition:background .2s ease}
.tldfw-card-open:hover .tldfw-more{background:#e9a4b2;border-color:#e9a4b2}
.tldfw-empty{text-align:center;color:#6f6a64}
.tldfw-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}
.tldfw-modal.is-open{display:flex}
.tldfw-modal-backdrop{position:absolute;inset:0;background:rgba(20,18,17,.62);backdrop-filter:blur(3px)}
.tldfw-modal-dialog{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,.92fr) minmax(360px,1.08fr);width:min(940px,100%);max-height:min(88vh,820px);overflow:auto;background:#fff;border-radius:4px;box-shadow:0 24px 80px rgba(0,0,0,.24)}
.tldfw-modal-close{position:absolute;right:13px;top:10px;z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:#f8e9e7;color:#171717;font-size:27px;line-height:1;cursor:pointer}
.tldfw-modal-image-wrap{min-height:100%;background:#f5f0e8}
.tldfw-modal-image-wrap img{display:block;width:100%;height:100%;min-height:520px;object-fit:cover}
.tldfw-modal-body{padding:42px 38px 32px;overflow:auto}
.tldfw-modal-eyebrow{margin:0 0 12px;color:#9b8270;font-size:10px;font-weight:700;letter-spacing:.16em}
.tldfw-modal-body h3{margin:0 0 18px;color:#171717;font-family:inherit;font-size:30px;line-height:1.15;font-weight:700}
.tldfw-modal-description{font-size:14px;line-height:1.75;color:#5e5954}
.tldfw-modal-description p{margin:0 0 12px}
.tldfw-modal-details{display:grid;grid-template-columns:1fr 1fr;gap:13px 18px;margin:24px 0 20px;padding:19px 0;border-top:1px solid #eee7df;border-bottom:1px solid #eee7df}
.tldfw-detail{display:flex;flex-direction:column;gap:5px;min-width:0}
.tldfw-detail span{font-size:9px;letter-spacing:.12em;font-weight:700;color:#a08b79}
.tldfw-detail strong{font-size:12px;line-height:1.45;color:#292522;font-weight:600;overflow-wrap:anywhere}
.tldfw-modal-price{margin:0 0 20px;font-size:22px;font-weight:700;color:#171717}
.tldfw-modal-actions{display:grid;grid-template-columns:1fr;gap:12px}
.tldfw-whatsapp{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 16px;box-sizing:border-box;background:#e9a4b2;border:1px solid #e9a4b2;border-radius:2px;color:#171717;text-decoration:none;text-align:center;font-size:11px;font-weight:700;letter-spacing:.07em}
.tldfw-whatsapp:hover{background:#f3c4c9;border-color:#f3c4c9;color:#171717}
.tldfw-paypal-area{min-height:48px}
.tldfw-paypal-area iframe{z-index:1}
.tldfw-paypal-note{margin:6px 0 0;color:#898078;font-size:11px;text-align:center}
.tldfw-payment-note{margin:16px 0 0;color:#8b837b;font-size:11px;line-height:1.55}
.tldfw-modal-status{margin:12px 0 0;color:#5e5954;font-size:13px;line-height:1.5}
body.tldfw-modal-open{overflow:hidden}
@media(max-width:900px){.tldfw-store{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tldfw-modal-dialog{grid-template-columns:1fr 1fr}.tldfw-modal-body{padding:36px 26px 26px}}
@media(max-width:640px){.tldfw-workshops-section{width:calc(100% - 28px);padding:8px 0 36px}.tldfw-store{grid-template-columns:1fr;gap:18px}.tldfw-card-content{padding:19px}.tldfw-card-title{font-size:20px}.tldfw-modal{padding:10px}.tldfw-modal-dialog{display:block;max-height:94vh;width:100%}.tldfw-modal-image-wrap{height:220px;min-height:0}.tldfw-modal-image-wrap img{height:220px;min-height:0}.tldfw-modal-body{padding:26px 20px 24px}.tldfw-modal-body h3{font-size:25px}.tldfw-modal-details{grid-template-columns:1fr 1fr;gap:12px}.tldfw-modal-close{position:sticky;float:right;margin-bottom:-38px;top:8px;right:8px}}

/* Brochure photos: consistent crop and subtle frame */
.tldfw-card-photo img{object-position:center center}.tldfw-card-photo{border-bottom:1px solid #eee7df}

/* Desktop-only wider side gutters and aligned card heights */
@media (min-width: 1100px) {
  .tldfw-workshops-section {
    width: calc(100% - 180px);
    max-width: 1480px;
    margin-left: auto;
    margin-right: auto;
  }
  .tldfw-store { align-items: stretch; }
  .tldfw-card { display: flex; }
  .tldfw-card-open { flex: 1 1 auto; }
  .tldfw-card-content { flex: 1 1 auto; }
  .tldfw-card-title { min-height: 2.5em; }
  .tldfw-card-summary { min-height: 3.1em; max-height: 3.1em; }
}

/* Client-supplied HD workshop images — display at full brightness and opacity */
.tldfw-card-photo img,
.tldfw-modal-image-wrap img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  image-rendering: auto;
}
.tldfw-modal-image-wrap { filter: none !important; }
