/* Catálogo único del spa: fotografía, función y precio en la misma ficha. */
.ritual-page .feature-section,
.ritual-page .packages-section,
.ritual-page .products-section,
.ritual-page .experience-section,
.ritual-page .reviews-section{padding-block:clamp(54px,5.5vw,84px)}
.ritual-page .section-heading{margin-bottom:32px}
.ritual-page .catalog-head{align-items:end;margin:68px 0 26px;scroll-margin-top:24px}
.ritual-page .catalog-head h3{margin:8px 0 5px;font-size:clamp(37px,3.8vw,56px)}
.ritual-page .catalog-head p{margin:0;color:#667769;font-size:15px}
.ritual-page .catalog-grid{display:block}
.catalog-category{padding:31px 0 34px;border-top:1px solid #d7dfd2}
.catalog-category:first-child{border-top:0;padding-top:0}
.catalog-category-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:22px}
.catalog-category-head h4{font:400 clamp(32px,3.2vw,46px)/1.1 "Playfair Display",Georgia,serif;letter-spacing:-.045em;color:#2c4536;margin:0}
.catalog-category-head p{font-size:15px;line-height:1.5;color:#697969;max-width:525px;margin:0}
.luxury-intro-offer{display:grid;grid-template-columns:1fr 2fr;gap:5px 22px;align-items:center;margin:0 0 23px;padding:19px 24px;border:1px solid #d9d0b9;border-radius:20px;background:linear-gradient(115deg,#f9f6ed,#edf1e8);color:#2c4536}
.luxury-intro-offer span{grid-row:span 2;color:#957950;font-size:11px;font-weight:700;letter-spacing:.15em}
.luxury-intro-offer strong{font:400 clamp(21px,2.2vw,30px)/1.2 "Playfair Display",Georgia,serif}
.luxury-intro-offer p{margin:0;color:#637365;font-size:13px}
.catalog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.catalog-card{min-width:0;min-height:148px;display:flex;align-items:stretch;gap:14px;padding:11px;background:#f0f2ea;border:1px solid #e0e6dc;border-radius:20px;color:#2d4537;transition:border-color .22s ease,background-color .22s ease,transform .22s ease,box-shadow .22s ease}
.catalog-card[hidden]{display:none}
.catalog-card:nth-child(4n+2){background:#f4efe8}
.catalog-card:nth-child(4n+3){background:#f0eee8}
a.catalog-card:hover{transform:translateY(-3px);border-color:#b9c9b7;box-shadow:0 12px 25px rgba(49,68,51,.09)}
.catalog-card-photo{display:block;flex:0 0 119px;width:119px;min-height:124px;overflow:hidden;border-radius:13px;background:#e6e9e1}
.catalog-card-photo img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;object-position:center;filter:saturate(.9)}
.catalog-card-text{background:#f4f0e9;min-height:138px}
.catalog-card-text:nth-child(3n+2){background:#edf1e9}
.catalog-card-monogram{display:grid;place-items:center;flex:0 0 74px;align-self:center;aspect-ratio:1;border:1px solid #c6b79f;border-radius:50%;color:#9b815e;font:italic 25px Georgia,serif;letter-spacing:-.08em}
.catalog-card-text .catalog-card-body{padding:12px 8px 12px 0}
.catalog-card-body{min-width:0;flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;padding:5px 4px 5px 0}
.catalog-card-body>strong{display:block;font:400 clamp(20px,1.65vw,25px)/1.16 "Playfair Display",Georgia,serif;letter-spacing:-.02em;color:#2b4436}
.catalog-card-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#657466;font-size:13px;line-height:1.4}
.catalog-card-foot{color:#8a714d;font-size:13px;font-weight:700;margin-top:auto;padding-top:2px}
.catalog-card-foot del{display:block;color:#798777;font-weight:400}
.catalog-card-foot strong{display:block;color:#3b624a}
.catalog-laser-card{position:relative;min-height:155px}
.catalog-laser-card .catalog-card-body{justify-content:flex-start}
.catalog-laser-card .catalog-card-foot{margin-top:0}
.laser-zones{width:100%;margin-top:auto}
.laser-zones summary{cursor:pointer;font-size:13px;font-weight:700;color:#35533d;list-style:none;min-height:26px}
.laser-zones summary::-webkit-details-marker{display:none}
.laser-zones summary::after{content:"+";margin-left:8px;font-size:17px;font-weight:400}
.laser-zones[open] summary::after{content:"−"}
.laser-zones-list{display:flex;flex-wrap:wrap;gap:7px;padding:10px 0 3px}
.laser-zones-list a{font-size:12px;line-height:1.2;padding:7px 9px;border:1px solid #cbd8c8;border-radius:999px;background:#fff;color:#37513d}
.laser-zones-list a:hover{background:#e4ede1}
.catalog-show-more{display:block;min-height:40px;margin:17px 0 0 auto;padding:9px 17px;border:1px solid #b9cbb7;border-radius:999px;background:#fff;color:#34513d;font-size:13px;font-weight:700}
.catalog-show-more:hover{background:#e9f0e5}
.ritual-page .catalog-note{margin-top:18px;font-size:13px;line-height:1.5}
.ritual-page .quote-section{padding:39px 24px 43px}
.ritual-page .quote-inner p{font-size:clamp(30px,3.5vw,48px);max-width:880px;line-height:1.18;margin:12px auto}
.ritual-page .package-card{min-height:340px;padding:28px 29px 26px;border-radius:110px 110px 25px 25px}
.ritual-page .package-card h3{font-size:clamp(31px,2.8vw,41px);margin:24px 0 10px}
.ritual-page .package-description{margin:0 0 15px;line-height:1.5}
.ritual-page .package-includes{padding-top:12px;margin:auto 0 12px}
.ritual-page .package-price{margin-bottom:13px}
.ritual-page .experience-grid{grid-template-rows:245px 245px}
.ritual-page .kuki-launch{bottom:24px}
@media(max-width:1180px){.catalog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){
  .ritual-page .catalog-head{align-items:flex-start;margin-top:52px}
  .catalog-category-head{display:block}
  .catalog-category-head p{margin-top:8px}
  .luxury-intro-offer{grid-template-columns:1fr;padding:18px}
  .luxury-intro-offer span{grid-row:auto}
  .catalog-card-grid{grid-template-columns:1fr}
  .ritual-page .experience-grid{grid-template-rows:220px 190px 220px}
}
@media(max-width:520px){
  .ritual-page .feature-section,.ritual-page .packages-section,.ritual-page .products-section,.ritual-page .experience-section,.ritual-page .reviews-section{padding-block:54px}
  .ritual-page .catalog-head{margin-top:43px}
  .ritual-page .catalog-head h3{font-size:37px}
  .catalog-category{padding-block:27px}
  .catalog-card{min-height:128px;gap:12px;padding:9px;border-radius:17px}
  .catalog-card-photo{flex-basis:102px;width:102px;min-height:108px;border-radius:11px}
  .catalog-card-body>strong{font-size:20px}
  .catalog-card-summary{font-size:12px}
  .catalog-card-foot{font-size:12px}
  .ritual-page .quote-section{padding:31px 18px 34px}
  .ritual-page .quote-inner p{font-size:31px}
  .ritual-page .package-card{min-height:305px;padding:25px 25px 24px;border-radius:90px 90px 22px 22px}
  .ritual-page .package-card h3{font-size:34px;margin:20px 0 10px}
  .ritual-page .kuki-launch{bottom:12px}
}
@media(prefers-reduced-motion:reduce){.catalog-card{transition:none}}
.catalog-card{border:3px solid #4e7659}
a.catalog-card:hover,a.catalog-card:focus-visible{border-color:#4e7659}
