/* Editorial art direction, layered over the preserved booking application. */
:root{--primary:#a71955;--border:#eed5df}body{font-size:16px}.editorial{background:#fff;color:#351c2a}.editorial .header{height:100px;padding:8px 5%;background:#ffffffed;backdrop-filter:blur(14px);border-bottom:1px solid #f1dfe7}.editorial .brand-logo{width:144px;height:83px;background:transparent;overflow:hidden}.editorial .brand-logo img,.editorial .hero-brand img{filter:grayscale(1) brightness(.62) contrast(16) invert(1);mix-blend-mode:multiply;transform:scale(1.26);object-fit:contain}.editorial .hero-brand{background:transparent;width:min(290px,76%);aspect-ratio:1.65;margin-bottom:12px;overflow:hidden}.editorial .hero{isolation:isolate;grid-template-columns:1fr 1.13fr;min-height:720px;gap:5%;padding:45px 6% 80px;background:radial-gradient(ellipse at 90% 80%,#edbdd3 0,transparent 55%),linear-gradient(115deg,#fff 15%,#fff4f8 68%,#f8dbe8);overflow:hidden}.editorial .hero-copy{position:relative;z-index:2;min-width:0}.editorial .hero h1{font-size:clamp(52px,5.4vw,86px);line-height:1.05;letter-spacing:-.055em;margin:22px 0}.editorial h1 em,.editorial h2 em{color:#a71955}.editorial .hero .eyebrow{font-size:12px;letter-spacing:.16em}.editorial .intro{max-width:420px;font-size:17px;line-height:1.8}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.editorial .button{border-radius:100px;padding:16px 23px;font-size:15px;gap:12px;min-height:50px;box-shadow:0 8px 24px #ad215819}.button svg,.service-whatsapp svg{width:20px;height:20px;flex-shrink:0}.editorial .button.secondary{background:transparent;color:#8b1747;border-color:#cc9fb1;box-shadow:none}.editorial .hero-photo{width:100%;height:auto;aspect-ratio:1;border-radius:48% 48% 12px 12px;overflow:hidden;box-shadow:18px 26px 70px #68243b24;transform:rotate(2deg);border:8px solid #ffffffa6}.editorial .hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center;margin:0;transform:none!important}.editorial .photo-label,.editorial .photo-number{font-size:12px}.editorial .photo-number{display:none}.floating-brush{position:absolute;right:1%;bottom:8px;width:clamp(125px,17vw,245px);height:390px;z-index:3;pointer-events:none;filter:drop-shadow(14px 24px 15px #61213d30);animation:brush-float 6s ease-in-out infinite;transform-origin:50% 70%}.floating-brush img{width:100%;height:100%;object-fit:contain}.motion-control{position:absolute;bottom:22px;right:6%;z-index:4;font-size:12px;border:1px solid #c79baa;border-radius:30px;background:#fff9;padding:8px 12px;color:#5b3446}.motion-paused .floating-brush{animation-play-state:paused}.motion-paused .hero-photo img{transform:none!important}@keyframes brush-float{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-22px) rotate(-5deg)}}.editorial .ribbon{background:#8f164a;color:white;padding:19px 6%}.editorial .ribbon span{font-size:15px}.editorial .section{padding:90px 6%}.editorial .section-heading{margin-bottom:42px}.editorial .section h2,.editorial .booking-section h2{font-size:clamp(42px,4.5vw,65px)}.editorial .service-grid{border:0;gap:22px}.editorial .service{border:1px solid #efd9e3;border-radius:14px;padding:30px;min-height:345px;background:linear-gradient(145deg,#fff,#fff7fa);transition:transform .25s,box-shadow .25s}.editorial .service:hover{transform:translateY(-6px);box-shadow:0 20px 45px #74214114}.editorial .service-number{font-size:25px}.editorial .service h3{font-size:29px}.editorial .service p{font-size:16px;line-height:1.7}.editorial .service a{font-size:14px;min-height:42px}.editorial .service a.service-whatsapp{justify-content:flex-start;gap:10px;border-top:1px solid #efdae3;padding-top:14px;margin-top:14px;color:#176b47}.editorial .cinema{height:510px;clip-path:none!important}.editorial .cinema img{object-position:center 40%}.editorial .cinema-title{font-size:clamp(48px,6vw,78px)}.editorial .gallery{gap:30px}.editorial .gallery-item{position:relative;border-radius:16px 16px 0 0;padding-bottom:40px;max-width:none}.editorial .gallery-item img{height:400px;border-radius:16px;transition:filter .3s}.editorial .gallery-item.item-4 img{height:400px;object-fit:contain;background:#faedf3}.editorial .gallery-item figcaption{font-size:12px;letter-spacing:.08em}.gallery-open{position:absolute;inset:0 0 40px;width:100%;border:0;background:transparent;border-radius:16px;cursor:zoom-in;display:flex;align-items:flex-end;justify-content:center;padding:18px}.gallery-open span{background:#fffffff0;border-radius:50px;padding:9px 15px;font-size:13px;color:#712041;box-shadow:0 4px 18px #0002}.gallery-open:hover{background:#8b174711}.booking-steps{background:#fff8fb}.booking-steps ol{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;list-style:none;padding:0}.booking-steps li{border-top:1px solid #d5aabb;padding-top:22px}.booking-steps li>span{font:italic 32px Georgia,serif;color:#a71955}.booking-steps h3{font:26px Georgia,serif;margin:17px 0 12px}.booking-steps li p{color:#70545f;line-height:1.7}.editorial .booking-section{background:linear-gradient(135deg,#f9e0ec,#fff3f8)}.editorial .booking-form{border-radius:18px;box-shadow:0 20px 60px #7721410a}.editorial .option{border-radius:9px}.editorial .option strong{font-size:15px}.editorial .option small,.editorial .help,.editorial .consent{font-size:14px!important}.editorial .booking-form label{font-size:15px}.editorial .booking-form input:not([type=radio]){border-radius:8px;min-height:48px}.editorial .footer-logo{filter:grayscale(1) brightness(.62) contrast(16);mix-blend-mode:screen;object-fit:contain}.editorial footer{padding-bottom:100px}.editorial .footer-top a{font-size:16px}.whatsapp-float{position:fixed;bottom:22px;right:22px;z-index:80;display:flex;align-items:center;gap:11px;padding:16px 23px;background:#137947;color:white;border-radius:60px;box-shadow:0 8px 32px #06432835;font-size:16px;font-weight:600;text-decoration:none;min-height:56px;transition:transform .2s,background .2s}.whatsapp-float:hover{background:#0d653a;transform:translateY(-3px)}.whatsapp-float svg{width:25px;height:25px}.look-dialog{border:0;border-radius:20px;padding:0;background:#fff7fa;color:#351c2a;width:min(1050px,94vw);max-width:94vw;max-height:90dvh;box-shadow:0 30px 100px #0005}.look-dialog::backdrop{background:#20101de6;backdrop-filter:blur(8px)}.look-shell{display:grid;grid-template-columns:1.4fr 1fr;position:relative}.look-photo{background:#190e17;display:flex;align-items:center;min-width:0}.look-photo img{width:100%;height:75dvh;object-fit:contain}.look-details{padding:60px 35px 35px;align-self:center}.look-details h2{font:48px/1.1 Georgia,serif;letter-spacing:-.03em;margin:20px 0}.look-details h2 em{color:#a71955}.look-caption{font-size:16px;line-height:1.7;color:#70545f}.look-nav{display:flex;gap:22px;align-items:center;margin:25px 0}.look-nav button,.look-close{width:46px;height:46px;border-radius:50%;border:1px solid #d7b8c4;background:white;color:#64213e;font-size:24px;cursor:pointer}.look-close{position:absolute;right:12px;top:12px;z-index:2}.look-counter{font-size:14px}.gallery-is-open{overflow:hidden}:focus-visible{outline:3px solid #a71955;outline-offset:5px}button,a,input{touch-action:manipulation}
@media(min-width:1600px){.editorial .hero,.editorial .section,.editorial .booking-section{padding-left:calc((100vw - 1400px)/2);padding-right:calc((100vw - 1400px)/2)}.floating-brush{right:calc((100vw - 1490px)/2)}}
@media(max-width:900px){.editorial .hero{gap:3%;min-height:660px}.editorial .hero h1{font-size:56px}.editorial .hero-brand{width:240px}.floating-brush{width:145px;height:280px}.editorial .gallery-item img,.editorial .gallery-item.item-4 img{height:310px}.editorial .service{padding:24px}.look-details{padding:55px 22px 25px}.look-details h2{font-size:38px}.look-details .button{font-size:14px;padding:14px}}
@media(max-width:650px){html{scroll-padding-top:92px}.editorial .header{height:85px;padding:5px 6%}.editorial .brand-logo{width:125px;height:73px}.editorial .nav{background:#fff}.editorial .menu{min-width:44px;min-height:44px}.editorial .hero{grid-template-columns:1fr;padding:25px 6% 68px;gap:28px;min-height:0}.editorial .hero-brand{display:none}.editorial .hero h1{font-size:clamp(45px,12vw,64px);margin:15px 0}.editorial .hero .eyebrow{font-size:12px}.editorial .intro{font-size:16px;line-height:1.7;margin-bottom:18px}.hero-actions{gap:10px;margin-top:16px}.editorial .hero-actions .button{width:100%;padding:14px 18px;font-size:15px}.editorial .hero-actions .secondary{width:auto;padding:10px 0;min-height:36px;border:0;border-bottom:1px solid #d5a6ba;border-radius:0}.editorial .hero-photo{max-width:450px;aspect-ratio:1;height:auto;border-width:5px;transform:rotate(1deg);border-radius:42% 42% 12px 12px}.editorial .location{font-size:14px;margin-top:15px}.floating-brush{width:125px;height:235px;right:0;bottom:40px}.motion-control{right:6%;bottom:15px;font-size:12px}.editorial .discover{font-size:12px;bottom:24px;max-width:47%;gap:8px}.editorial .photo-label{font-size:11px;left:18px;bottom:20px}.editorial .ribbon span:first-child{font-size:21px}.editorial .section{padding:60px 6%}.editorial .section h2,.editorial .booking-section h2{font-size:43px}.editorial .service-grid{gap:16px}.editorial .service{min-height:0;padding:26px}.editorial .service h3{font-size:28px}.editorial .service p{margin-bottom:14px}.editorial .cinema{height:410px}.editorial .cinema-title{font-size:49px}.editorial .gallery{gap:15px;grid-template-columns:1fr 1fr}.editorial .gallery-item{padding-bottom:30px}.editorial .gallery-item img,.editorial .gallery-item.item-4 img{height:230px}.editorial .gallery-item figcaption{font-size:12px;letter-spacing:0;gap:6px}.editorial .gallery-item figcaption span:first-child{font-size:11px}.gallery-open{padding:10px 3px;bottom:30px}.gallery-open span{font-size:12px;padding:8px 10px}.booking-steps ol{grid-template-columns:1fr;gap:28px}.booking-steps h3{font-size:26px;margin-top:10px}.editorial .booking-form{padding:25px 18px}.editorial .footer-top a{font-size:15px}.whatsapp-float{bottom:max(16px,env(safe-area-inset-bottom));right:16px;min-height:54px;padding:13px 18px;font-size:15px}.look-dialog{width:94vw;max-height:92dvh;border-radius:14px}.look-shell{display:block}.look-photo img{height:48dvh}.look-details{padding:20px}.look-details h2{font-size:32px;margin:10px 0}.look-details h2 br{display:none}.look-details>.eyebrow{display:none}.look-nav{margin:15px 0}.look-caption{font-size:14px}.look-details .button{width:100%}.editorial .booking-intro{position:static}.editorial .form-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.floating-brush{animation:none}.motion-control{display:none}.editorial .reveal,.editorial .hero-copy>*{opacity:1!important;transform:none!important}.editorial .cinema{clip-path:none!important}}
/* V3: client feedback — curated photographs, prominent contact, scroll zoom. */
.editorial .hero-photo img{transform:scale(var(--portrait-scale,1.1))!important;transform-origin:50% 42%;will-change:transform}.editorial .hero-photo{border-radius:180px 180px 18px 18px;transform:none;border:6px solid #fff;box-shadow:20px 28px 0 #f3d5e3,25px 35px 70px #68243b20}.editorial .hero{background:radial-gradient(ellipse at 90% 70%,#efb5d0 0,transparent 52%),linear-gradient(110deg,#fff 25%,#fff5fa 75%);padding-bottom:90px}.editorial .hero h1{font-weight:400}.editorial .hero h1 em{display:inline-block;color:#9a1b54}.editorial .hero .intro{color:#634151}.editorial .hero-brand{width:min(320px,85%)}.editorial .floating-brush{right:1%;bottom:8px}.editorial .ribbon{background:#74143e}.editorial .service-grid{gap:0;border-top:1px solid #dfbccc;border-left:1px solid #dfbccc}.editorial .service{border:0;border-right:1px solid #dfbccc;border-bottom:1px solid #dfbccc;border-radius:0;background:white;box-shadow:none}.editorial .service:hover{background:#fff1f7;transform:none;box-shadow:inset 0 3px #a71955}.editorial .service-number{font-size:30px;opacity:.85}.editorial #trabajos{background:#fdf0f6}.editorial .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 45px}.editorial .gallery-item{padding-bottom:36px;overflow:visible}.editorial .gallery-item:nth-child(n){margin-top:0}.editorial .gallery-item:nth-child(even){margin-top:65px}.editorial .gallery-item img,.editorial .gallery-item.item-4 img{height:auto;width:100%;aspect-ratio:1;object-fit:contain;object-position:center;background:#efdde6;border-radius:8px}.editorial .gallery-open{border-radius:8px;bottom:36px}.editorial .gallery-item figcaption{padding:15px 0;font-size:13px}.editorial .gallery-open span{padding:12px 20px}.editorial .booking-steps{background:#fff}.editorial footer{background:#43172f;padding:85px 6% 100px}.editorial .footer-top{grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding-bottom:50px}.contact-intro h2{font:clamp(38px,4.2vw,62px)/1.1 Georgia,serif;letter-spacing:-.035em;margin:20px 0 25px;color:#fff}.contact-intro h2 em{color:#f4bbd4}.editorial .contact-intro>p{font-size:16px;line-height:1.7;max-width:370px}.contact-channels{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}.editorial .footer-top .contact-channel{margin:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;border:1px solid #b97d993d;border-radius:12px;padding:22px;background:#ffffff08;transition:background .2s,transform .2s}.editorial .footer-top .contact-channel:hover{background:#ffffff15;transform:translateY(-3px)}.editorial .footer-top .contact-wa{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:flex-start;background:#167549;border:1px solid #2d9969;font-size:21px;font-weight:600;padding:25px}.contact-wa svg{height:30px;width:30px;flex-shrink:0}.channel-label{font-size:12px;letter-spacing:.13em;color:#f0c4d7}.contact-channel strong{font-size:19px;line-height:1.4;font-weight:500;overflow-wrap:anywhere}.contact-instagram>span:last-child{font-size:14px;color:#f1cee0}.editorial .footer-top .contact-email{grid-column:1/-1;font-size:16px;margin:8px 0;padding:10px 0;text-decoration:underline;text-underline-offset:5px}.editorial .footer-bottom{font-size:14px}.editorial .whatsapp-float{box-shadow:0 0 0 4px #fff,0 8px 32px #06432835}.editorial .eyebrow{font-size:13px}
@media(max-width:900px){.editorial .nav{gap:16px}.editorial .footer-top{gap:30px}.contact-channels{grid-template-columns:1fr}.editorial .footer-top .contact-wa{font-size:18px}.contact-channel strong{font-size:18px}}
@media(max-width:650px){.editorial .hero{padding-bottom:75px}.editorial .hero-photo{border-radius:135px 135px 12px 12px;box-shadow:10px 14px 0 #efcbdc,10px 18px 45px #68243b20}.editorial .hero-brand{display:none}.editorial .hero h1{font-size:clamp(43px,12vw,62px)}.editorial .gallery{gap:28px;grid-template-columns:1fr}.editorial .gallery-item:nth-child(n){margin-top:0}.editorial .gallery-item img,.editorial .gallery-item.item-4 img{height:auto;aspect-ratio:1}.editorial .gallery-item figcaption,.editorial .gallery-item figcaption span:first-child{font-size:13px}.editorial .gallery-open span{font-size:14px}.editorial .footer-top{grid-template-columns:1fr;gap:30px}.editorial footer{padding:60px 6% 105px}.contact-intro h2{font-size:44px}.editorial .footer-top .contact-wa{font-size:18px;padding:22px 17px}.contact-channels{grid-template-columns:1fr}.contact-channel strong{font-size:23px}.editorial .footer-top .contact-channel{padding:22px}.editorial .footer-top .contact-email{font-size:15px}.editorial .service{padding:26px}.editorial .service-grid{gap:0}}
@media(prefers-reduced-motion:reduce){.editorial .hero-photo img{transform:none!important;will-change:auto}}
/* V5 — interaction system, with visible default content and reduced motion. */
.editorial .button,.editorial .service-detail-button,.editorial .contact-channel,.editorial .whatsapp-float{transition:background-color .22s,box-shadow .22s,transform .22s}
.editorial .button:not(.secondary){background-image:linear-gradient(108deg,transparent 38%,#ffb6d02b 43%,#ffdbe85e 50%,#ffb6d02b 57%,transparent 62%);background-size:280% 100%;background-position:100% 0;transition:background-position .65s,background-color .2s,box-shadow .2s,transform .2s}
@media(hover:hover){.editorial .button:not(.secondary):hover{background-position:0 0;box-shadow:0 10px 24px #7c1f4530}.editorial .service:hover{transform:translateY(-4px);box-shadow:0 14px 30px #75204613,inset 0 3px #a71955}.editorial .contact-channel:hover{transform:translateY(-3px)}.editorial .gallery-open:hover span{transform:translateY(-4px)}}
.editorial .button:active,.editorial .service-detail-button:active,.editorial .whatsapp-float:active,.editorial .contact-channel:active{transform:scale(.97)}
.editorial .button:disabled:active{transform:none}.editorial .floating-brush img{transform:rotate(var(--brush-tilt,0deg));transition:transform .45s ease-out;transform-origin:50% 70%}.motion-paused .floating-brush img{transform:none}.editorial .nav a{position:relative}.editorial .nav a[aria-current="location"]:not(.button){color:#971649;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}.editorial .nav a.button[aria-current="location"]{box-shadow:0 0 0 3px #f2c4d8}
.editorial .service-detail-button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;margin:0 0 10px;padding:12px 17px;border:1px solid #d7aabd;border-radius:30px;font-size:15px;background:#fff3f8;color:#801642;cursor:pointer}.service-detail-button>span{font-size:20px}.editorial .service-detail-button:hover{background:#f7dce8}.editorial .service{transition:transform .25s,box-shadow .25s,background .25s}.service-dialog{border:1px solid #eac7d7;border-radius:22px;padding:0;width:min(590px,92vw);max-width:92vw;max-height:90dvh;color:#351c2a;background:linear-gradient(135deg,#fff,#fff1f7);box-shadow:0 28px 90px #27051c50}.service-dialog::backdrop{background:#20101dd9;backdrop-filter:blur(7px)}.service-detail{padding:55px 40px 38px;position:relative}.detail-close{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ddbccb;border-radius:50%;background:white;color:#6b2343;font-size:27px;cursor:pointer}.detail-option{display:block;color:#9a2454;margin-top:22px;font-size:14px}.service-detail h2{font:44px/1.12 Georgia,serif;letter-spacing:-.035em;margin:12px 0 22px}.detail-description{font-size:17px;color:#604152;line-height:1.8}.detail-note{border-top:1px solid #e6c5d4;padding-top:20px;margin-top:22px;font-size:15px;line-height:1.7;color:#70545f}.detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.detail-actions .button{flex:1 1 auto}.service-is-open{overflow:hidden}.look-dialog[open],.service-dialog[open]{animation:dialog-enter .2s ease-out}@keyframes dialog-enter{from{opacity:.7;translate:0 10px}to{opacity:1;translate:0 0}}.gallery-open span{transition:transform .25s}.swipe-help{display:none;font-size:13px;color:#70545f;margin:0 0 15px}.editorial .reveal{opacity:1!important;transform:none!important}.gentle-enter{animation:gentle-enter .65s ease-out both}@keyframes gentle-enter{from{translate:0 16px}to{translate:0 0}}.editorial .booking-form input{transition:border-color .2s,box-shadow .2s}.editorial .booking-form input:focus{outline:2px solid #ae2a61;outline-offset:2px;border-color:#ae2a61;box-shadow:0 0 0 5px #f7d3e44d}.editorial .booking-form input[aria-invalid="true"]{border:2px solid #a51b3d;background:#fff6f8}.field-error{display:block;color:#a1193b;font-size:14px;line-height:1.5;margin-top:7px}.field-error[hidden]{display:none}.is-submitting{cursor:progress!important}.is-submitting::after{content:"";display:block;width:17px;height:17px;border:2px solid #fff6;border-top-color:#fff;border-radius:50%;animation:submit-spin .8s linear infinite}@keyframes submit-spin{to{rotate:360deg}}
@media(max-width:650px){.service-detail{padding:54px 23px 28px}.service-detail h2{font-size:36px}.detail-description{font-size:16px}.detail-actions{flex-direction:column}.detail-actions .button{width:100%}.swipe-help{display:block}.editorial .nav a[aria-current="location"]:not(.button){text-underline-offset:5px}}
@media(prefers-reduced-motion:reduce){.editorial .floating-brush img{transform:none!important}.gentle-enter,.look-dialog[open],.service-dialog[open],.is-submitting::after{animation:none!important}.editorial .button{background-image:none!important}.editorial .service:hover,.editorial .contact-channel:hover,.editorial .gallery-open:hover span{transform:none!important}}
.motion-paused .gentle-enter,.motion-paused .look-dialog,.motion-paused .service-dialog{animation:none!important}
@media(min-width:651px) and (max-width:860px){.editorial .menu{display:block;min-width:44px;min-height:44px}.editorial .nav{display:none;position:absolute;top:100%;left:0;right:0;padding:24px 6%;background:white;border-bottom:1px solid #e8cbd7}.editorial .nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px}}
