.romaly-premium-page{--romaly-brown:#794014;--romaly-dark:#4b260f;--romaly-cream:#faf5ef;background:#fff;color:#202020;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:clip}
.romaly-service-shell{max-width:1240px;width:calc(100% - 56px);margin:0 auto;padding:20px 0 48px;box-sizing:border-box}
.romaly-premium-page .woocommerce-breadcrumb{font-size:12px;color:#757575;margin:0 0 22px;line-height:1.6}.romaly-premium-page .woocommerce-breadcrumb span{padding:0 10px}.romaly-premium-page .woocommerce-breadcrumb a{color:inherit}
.romaly-service-hero{display:grid;grid-template-columns:minmax(0,40fr) minmax(0,25fr) minmax(0,35fr);gap:28px;align-items:start}
.romaly-service-gallery{min-width:0}.romaly-service-gallery .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}.romaly-service-gallery .woocommerce-product-gallery__wrapper{margin:0!important}.romaly-service-gallery img{border-radius:12px;display:block}.romaly-service-gallery .woocommerce-product-gallery__image img{width:100%;height:auto;object-fit:cover}.romaly-service-gallery .flex-control-thumbs{display:flex;gap:10px;margin-top:12px!important;padding:0!important}.romaly-service-gallery .flex-control-thumbs li{float:none!important;flex:1;max-width:25%;list-style:none;margin:0!important}.romaly-service-gallery .flex-control-thumbs img{border:2px solid transparent;cursor:pointer;opacity:.75}.romaly-service-gallery .flex-control-thumbs img.flex-active{border-color:var(--romaly-brown);opacity:1}
.romaly-service-category{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--romaly-brown);margin:0 0 12px!important;font-weight:600}.romaly-service-title{font-size:clamp(23px,2.15vw,30px)!important;font-weight:700!important;line-height:1.2!important;margin:0 0 24px!important;padding:0!important;color:#151515!important}
.romaly-service-price{font-size:clamp(30px,3vw,40px);font-weight:750;color:var(--romaly-dark);line-height:1.2;margin:0 0 18px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.romaly-service-price *{color:inherit!important;font-size:inherit!important}.romaly-service-price ins{text-decoration:none;background:transparent}.romaly-service-price del{font-size:20px;font-weight:400;color:#777;opacity:.7}
.romaly-service-duration{display:flex;align-items:center;gap:10px;margin:0 0 22px!important;font-size:15px;color:#454545}.romaly-service-duration span{font-size:26px;color:var(--romaly-brown)}.romaly-service-intro{font-size:14px;line-height:1.7;color:#666;margin:0 0 26px!important}.romaly-service-benefit-list{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:15px}.romaly-service-benefit-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5}.romaly-service-benefit-list span{display:grid;place-items:center;flex:0 0 23px;height:23px;color:#fff;background:#b97842;border-radius:50%;font-size:14px}
.romaly-service-booking{min-width:0}.romaly-reserve{background:var(--romaly-cream);border:1px solid #eee1d5;border-radius:14px;padding:22px;min-width:0}.romaly-reserve-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px}.romaly-reserve-heading>span{font-size:29px;color:var(--romaly-brown)}.romaly-reserve h2{font-size:21px!important;line-height:1.25;margin:0 0 4px!important;padding:0!important;font-weight:700!important}.romaly-reserve-heading p,.romaly-reserve-note{font-size:12px;color:#777;line-height:1.5;margin:0!important}.romaly-reserve-note{margin-top:18px!important}
.romaly-premium-page .bookly-form{min-width:0!important}.romaly-premium-page .bookly-form-group{width:100%!important;max-width:100%;float:none!important;margin-bottom:12px!important}.romaly-premium-page .bookly-form-group select,.romaly-premium-page .bookly-form-group input{max-width:100%!important;border:1px solid #e5dbd3!important;border-radius:8px!important;background:#fff!important;min-height:40px}.romaly-premium-page .bookly-box{font-size:13px;line-height:1.6}.romaly-premium-page .bookly-btn{background:var(--romaly-brown)!important;border-radius:8px!important;box-shadow:none!important;border-color:var(--romaly-brown)!important}.romaly-premium-page .bookly-progress-tracker{font-size:11px!important}.romaly-premium-page .bookly-slot-calendar{float:none!important;max-width:100%!important;margin-bottom:16px!important}.romaly-premium-page .bookly-time-step{float:none!important;margin:0!important;max-width:100%!important}.romaly-premium-page .bookly-columnizer-wrap{max-width:100%;overflow-x:auto}.romaly-premium-page .bookly-hour{border-radius:8px!important}.romaly-premium-page .bookly-hour.booked{display:none!important}
.romaly-person-heading{font-size:14px;font-weight:650;margin:0 0 10px}.romaly-person-cards{display:flex;gap:9px;overflow-x:auto;padding:2px 1px 10px;scroll-snap-type:x proximity}.romaly-person-card{flex:0 0 86px;min-width:0;scroll-snap-align:start;background:#fff;border:2px solid #e7dfd8;border-radius:9px;padding:4px;cursor:pointer;color:#252525;position:relative;font:inherit;text-align:center}.romaly-person-card[aria-pressed=true]{border-color:var(--romaly-brown);box-shadow:0 0 0 1px #d5aa86}.romaly-person-card[aria-pressed=true]:after{content:'✓';position:absolute;right:-3px;top:-4px;background:var(--romaly-brown);border-radius:50%;color:white;width:23px;height:23px;display:grid;place-items:center}.romaly-person-card img,.romaly-person-avatar{width:100%;height:94px;object-fit:cover;object-position:50% 20%;border-radius:5px;display:block}.romaly-person-avatar{display:grid;place-items:center;background:#f3e6d8;font-size:27px;color:var(--romaly-brown)}.romaly-person-name{display:block;font-size:11px;line-height:1.25;padding:7px 1px 3px;overflow-wrap:anywhere}.romaly-person-card:focus-visible{outline:3px solid #4b260f;outline-offset:3px}.romaly-native-staff label,.romaly-native-staff select{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important}
.romaly-service-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:34px;padding:28px 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.romaly-service-highlights>div{text-align:center;padding:0 18px;border-right:1px solid #eee}.romaly-service-highlights>div:last-child{border:0}.romaly-service-highlights span{display:block;font-size:38px;color:var(--romaly-brown);line-height:1.2;margin-bottom:10px}.romaly-service-highlights h2{font-size:15px!important;line-height:1.5!important;padding:0!important;margin:0!important;font-weight:600}
.romaly-service-about{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;padding:30px 0;border-bottom:1px solid #eee}.romaly-service-about:not(:has(.romaly-service-about-image)){grid-template-columns:1fr}.romaly-service-about h2,.romaly-service-faq>h2,.romaly-service-related>h2{font-size:26px!important;line-height:1.25;font-weight:700!important;margin:0 0 20px!important;padding:0!important}.romaly-service-long-description{font-size:15px;color:#666;line-height:1.7}.romaly-service-long-description .et_pb_section,.romaly-service-long-description .et_pb_row{padding:0!important;width:100%!important;max-width:100%!important;background:none!important}.romaly-service-about-image img{border-radius:12px;width:100%;height:100%;max-height:270px;object-fit:cover}
.romaly-service-faq{padding:28px 0;border-bottom:1px solid #eee}.romaly-service-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.romaly-service-faq details{border:1px solid #e9e5e1;border-radius:9px;background:#fff;padding:15px}.romaly-service-faq summary{cursor:pointer;font-size:14px;font-weight:600;line-height:1.5}.romaly-service-faq details p{font-size:14px;line-height:1.7;color:#666;margin:12px 0 0}
.romaly-service-related{padding-top:28px}.romaly-service-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.romaly-service-related article{border:1px solid #e9e3dd;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 14px #4b260f08}.romaly-related-image{display:block;aspect-ratio:1.6;overflow:hidden}.romaly-related-image img{width:100%;height:100%;object-fit:cover}.romaly-service-related article>div{padding:14px}.romaly-service-related h3{font-size:17px!important;line-height:1.3!important;font-weight:650!important;margin:0 0 7px;padding:0!important}.romaly-service-related h3 a{color:#222}.romaly-related-price{font-size:23px;color:var(--romaly-dark);font-weight:650;margin:0 0 6px!important}.romaly-related-price del{font-size:15px;color:#888}.romaly-related-price ins{background:none;text-decoration:none}.romaly-related-duration{font-size:13px;color:#777;margin:0 0 14px!important}.romaly-service-button{display:block;text-align:center;background:var(--romaly-brown);color:#fff!important;padding:11px 15px;border-radius:7px;font-size:14px;font-weight:600}
@media(max-width:979px){.romaly-service-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.romaly-service-booking{grid-column:1/-1}.romaly-service-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.romaly-service-shell{width:calc(100% - 36px)}}
@media(max-width:639px){.romaly-service-shell{width:calc(100% - 28px);padding-top:14px}.romaly-service-hero{grid-template-columns:1fr;gap:24px}.romaly-service-booking{grid-column:auto}.romaly-service-title{font-size:27px!important;margin-bottom:16px!important}.romaly-service-highlights{grid-template-columns:1fr 1fr;gap:24px 0}.romaly-service-highlights>div:nth-child(2){border:0}.romaly-service-about{grid-template-columns:1fr;gap:20px}.romaly-service-faq-grid{grid-template-columns:1fr}.romaly-reserve{padding:18px}.romaly-service-related-grid{gap:12px}.romaly-service-related h3{font-size:15px!important}.romaly-service-related article>div{padding:11px}.romaly-related-price{font-size:20px}}
.romaly-person-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.romaly-person-controls .romaly-person-heading{margin:0}.romaly-person-scroll{display:flex;gap:6px}.romaly-person-scroll button{width:28px;height:28px;border:1px solid #e5d7cb;border-radius:50%;background:#fff;color:#794014;font-size:23px;line-height:1;cursor:pointer}.romaly-service-intro,.romaly-service-long-description{font-weight:400}

.romaly-person-cards{scrollbar-width:none}.romaly-person-cards::-webkit-scrollbar{display:none}.romaly-time-range{clear:both;padding:8px 0;margin:6px 0 12px}.romaly-time-range summary{font-size:12px;color:#777;cursor:pointer}.romaly-time-range[open]{display:block}.romaly-time-range .bookly-form-group{margin-top:12px!important}.romaly-premium-page .bookly-service-step>.bookly-box.bookly-bold{display:none}.romaly-premium-page .bookly-mobile-step-2 .bookly-left{float:none!important;max-width:100%}.romaly-premium-page .bookly-service-step .bookly-nav-steps{margin-top:18px!important}

.romaly-premium-page .bookly-mobile-step-2 .bookly-left,.romaly-premium-page .bookly-mobile-step-2 .bookly-right{float:none!important;width:100%!important}.romaly-reserve .bookly-js-next-step{width:100%;margin-top:8px}

.romaly-service-gallery .woocommerce-product-gallery{opacity:1!important}

.romaly-premium-page .romaly-reserve .bookly-css-root .bookly-btn{border-radius:8px!important}.romaly-premium-page .romaly-reserve .bookly-js-available-date,.romaly-premium-page .romaly-reserve .bookly-css-root .bookly-js-date-from{width:100%!important;max-width:100%!important}

/* Composición amplia: la descripción aprovecha el espacio bajo la foto y el resumen. */
.romaly-service-shell{width:90%;max-width:1720px;padding-top:18px}
.romaly-service-hero{grid-template-columns:minmax(0,1.75fr) minmax(350px,1fr);gap:32px;align-items:stretch}
.romaly-service-content{min-width:0}
.romaly-service-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.romaly-service-summary{min-width:0}
.romaly-service-title{margin-bottom:18px!important}
.romaly-service-duration{margin-bottom:16px!important}
.romaly-service-intro{margin-bottom:18px!important}
.romaly-service-benefit-list{gap:10px}
.romaly-service-content .romaly-service-about{margin-top:24px;padding:24px 0 0;border-top:1px solid #eee;border-bottom:0;gap:24px}
.romaly-service-content .romaly-service-about h2{font-size:23px!important;margin-bottom:14px!important}
.romaly-service-booking>.romaly-reserve{height:100%;box-sizing:border-box;padding:20px}
.romaly-service-faq,.romaly-service-related{margin-top:28px;border-top:1px solid #eee}
.romaly-reserve-heading{margin-bottom:16px}
@media(min-width:1500px){.romaly-service-hero{grid-template-columns:minmax(0,1.6fr) minmax(430px,1fr)}.romaly-service-overview{gap:32px}.romaly-service-title{font-size:32px!important}}
@media(max-width:1100px){.romaly-service-hero{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:24px}.romaly-service-overview{gap:20px}.romaly-service-booking>.romaly-reserve{padding:16px}}
@media(max-width:979px){.romaly-service-shell{width:92%}.romaly-service-hero{grid-template-columns:1fr;gap:26px}.romaly-service-booking{grid-column:auto}.romaly-service-booking>.romaly-reserve{height:auto}.romaly-service-overview{gap:24px}}
@media(max-width:639px){.romaly-service-shell{width:calc(100% - 28px)}.romaly-service-overview{grid-template-columns:1fr;gap:22px}.romaly-service-content .romaly-service-about{grid-template-columns:1fr}.romaly-service-booking>.romaly-reserve{padding:18px}}@media(max-width:979px){.romaly-service-content{display:contents}.romaly-service-overview{order:1}.romaly-service-booking{order:2}.romaly-service-content .romaly-service-about{order:3;margin-top:0}}
/* Horarios de Bookly en columnas visibles dentro del ancho del panel. */
.romaly-premium-page .bookly-time-step{width:100%!important;max-width:100%!important;height:auto!important;overflow:visible!important}
.romaly-premium-page .bookly-columnizer-wrap{height:auto!important;max-height:none!important;overflow:visible!important}
.romaly-premium-page .bookly-columnizer{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;white-space:normal!important;left:auto!important;width:100%!important}
.romaly-premium-page .bookly-time-screen{display:contents!important;overflow:visible!important;width:auto!important;height:auto!important}
.romaly-premium-page .bookly-column{display:flex!important;flex-direction:column;gap:5px;width:auto!important;min-width:0!important;height:auto!important;padding:0!important;overflow:visible!important}
.romaly-premium-page .bookly-time-screen:not(:first-child) .bookly-day{display:none!important}
.romaly-premium-page .bookly-hour{width:100%!important;min-height:36px;box-sizing:border-box;text-align:left}
@media(max-width:639px){.romaly-premium-page .bookly-columnizer{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:6px}.romaly-premium-page .bookly-hour{padding:6px!important;font-size:12px!important}}

/* Valores compartidos: separación entre la galería y Acerca de este servicio. */
.romaly-service-assurances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px;padding:24px 0;border-top:1px solid #e9dfd5;border-bottom:1px solid #e9dfd5;background:linear-gradient(180deg,#fff,#fdfaf7)}
.romaly-service-assurance{min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:0 16px;border-right:1px solid #e9dfd5}
.romaly-service-assurance:last-child{border-right:0}
.romaly-service-assurance svg{display:block;width:32px;height:32px;flex:none;color:var(--romaly-brown)}
.romaly-service-assurance p{font-size:14px!important;line-height:1.5!important;font-weight:650!important;color:#29231e;margin:0!important;padding:0!important;overflow-wrap:anywhere}
.romaly-service-content>.romaly-service-assurances+.romaly-service-about{margin-top:0;border-top:0;padding-top:26px}
@media(max-width:979px){.romaly-service-content>.romaly-service-assurances{order:2;margin-top:0}.romaly-service-booking{order:3}.romaly-service-content>.romaly-service-about{order:4}.romaly-service-content>.romaly-service-assurances+.romaly-service-about{padding-top:0}}
@media(max-width:639px){.romaly-service-assurances{padding:20px 0}.romaly-service-assurance{padding:0 8px;gap:8px}.romaly-service-assurance svg{width:28px;height:28px}.romaly-service-assurance p{font-size:12px!important}}

/* Escritorio: 30 / 35 / 35 sobre el ancho útil, descontando ambos espacios. */
@media(min-width:980px){
 .romaly-premium-page .romaly-service-hero{grid-template-columns:minmax(0,calc(65% - 8.4px)) minmax(0,1fr);gap:28px}
 .romaly-premium-page .romaly-service-overview{grid-template-columns:minmax(0,30fr) minmax(0,35fr);gap:28px}
}
