/* Integra el negro de los JPEG con el fondo sin alterar los originales. */
.brand,.brand-showcase,.legacy-team-poster,.gallery-empty{isolation:isolate}
.brand-original,.hero-logo,.legacy-team-poster>img,.gallery-empty>img{mix-blend-mode:lighten}
.legacy-team-poster{background:var(--bg);border:0;min-height:510px}
.legacy-team-poster>img{background:transparent;padding:18px;position:absolute}
.brand-showcase .showcase-corner{border-color:var(--gold)}
.instagram-contact{display:flex;gap:18px;align-items:center;padding:23px;margin-bottom:28px;border:1px solid #807044;background:linear-gradient(120deg,#e8bf5110,transparent);transition:border-color .2s,background .2s}
.instagram-contact:hover{border-color:var(--gold);background:#e8bf5115}
.instagram-contact>svg{width:35px;height:35px;flex-shrink:0;color:var(--gold)}
.instagram-contact>span:not(.instagram-arrow){display:flex;flex-direction:column;gap:7px;min-width:0}
.instagram-contact strong{font-size:19px;font-weight:500}
.instagram-contact span span{font-size:15px;color:var(--gold);overflow-wrap:anywhere}
.instagram-contact small{font-size:12px;color:var(--muted);line-height:1.5}
.instagram-arrow{margin-left:auto;font-size:24px;color:var(--gold)}
footer>a{font-size:11px;letter-spacing:1px;color:var(--gold);padding:12px 0}
@media(max-width:560px){.instagram-contact{padding:20px 16px;gap:13px}.instagram-contact strong{font-size:17px}.instagram-contact>svg{width:29px;height:29px}.instagram-contact span span{font-size:14px}.legacy-team-poster{min-height:360px;width:100%;margin:0}.legacy-team-poster>img{padding:8px}}
.service-photo.missing,.experience-photo.missing{background-image:url('/media/Logo.png')}

/* Final composition pass: each view gets its own visual rhythm. */
:root{--gold:#e8bf51}
.inner{background:linear-gradient(180deg,#111310 0%,#0d0f0d 100%)}
.section-heading{border-bottom-color:#2b3028}
#servicios .section-heading{align-items:start;max-width:1120px}
#servicios .section-heading>p{max-width:260px;padding-top:52px}
#servicios .services-layout{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:8%;align-items:start}
#servicios .service-photo{height:clamp(480px,62vh,680px);min-height:0;border-radius:0;background:#171b16}
#servicios .service-photo img{object-position:52% center}
#servicios .service-photo>span{left:28px;bottom:28px;color:#f1eee5;background:#111310c7;padding:10px 12px}
#servicios .service{padding:24px 0}
#servicios .service a{border-radius:0;color:#c9aa70}
#servicios .filters{border-bottom:0;margin:0 0 12px;gap:30px}
#servicios .filters button{padding:8px 0}
#experiencia{background:#151814}
#experiencia .experience-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:9%;align-items:stretch}
#experiencia .experience-photo{height:min(72vh,700px);min-height:540px;border-radius:0}
#experiencia .experience-photo img{object-position:54% center}
#experiencia .experience-copy{padding:42px 0 28px}
#experiencia .experience-copy .eyebrow{color:#9fa79a}
#experiencia .experience-copy h2 em{color:#e8bf51}
#experiencia .experience-point{border-top-color:#30362e;padding:24px 0}
#experiencia .experience-point>span{color:#b6a37e}
#legacy-team{background:#0b0d0c;color:#f1eee5}
#legacy-team .legacy-team-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:9%;align-items:center}
#legacy-team .legacy-team-layout>div:first-child{padding:20px 0}
#legacy-team .legacy-team-layout .eyebrow{color:#e8bf51}
#legacy-team .legacy-team-layout h2 em{color:#e8bf51}
#legacy-team .legacy-team-layout>div>p:not(.eyebrow){color:#b0b5ae}
#legacy-team .legacy-team-poster{width:100%;height:auto;aspect-ratio:4 / 5;min-height:0;margin:0;transform:none;background:transparent;border:0;overflow:visible;padding:0;box-shadow:none}
#legacy-team .legacy-team-stage{position:absolute;inset:0;display:grid;grid-template-rows:60% 40%;gap:18px;background:transparent}
#legacy-team .legacy-team-brand{display:grid;place-items:center;overflow:hidden;background:#f0ede4;padding:22px 12%;border:0;border-radius:48% 48% 12px 12px;position:relative}
#legacy-team .legacy-team-brand:before{display:none}
#legacy-team .legacy-team-photo-grid{min-height:0;display:grid;grid-template-columns:1.08fr .92fr;grid-template-rows:1fr 1fr;gap:10px;padding:0;background:transparent}
#legacy-team .legacy-team-photo-grid img{min-width:0;min-height:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.08);border:0}
#legacy-team .legacy-team-photo-grid img:first-child{grid-row:span 2;object-position:center}
#legacy-team .legacy-team-photo-grid img:nth-child(2){object-position:center 35%}
#legacy-team .legacy-team-photo-grid img:nth-child(3){object-position:center 45%}
#legacy-team .legacy-team-brand-logo{position:relative;width:auto;height:auto;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;filter:none;mix-blend-mode:normal;animation:none}
#legacy-team .legacy-team-poster.brand-pending:after{display:none}
@keyframes legacy-team-logo-float{0%,100%{filter:drop-shadow(0 5px 12px #0009)}50%{filter:drop-shadow(0 9px 18px #000c)}}
#galeria{background:#0b0d0b}
#galeria .section-heading{border-bottom:0;margin-bottom:30px;align-items:center}
#galeria .section-heading h2{max-width:520px}
#galeria .section-heading .text-link{border-bottom-color:#4e5b4d}
#galeria .gallery{grid-template-columns:1.35fr .85fr .85fr;grid-auto-rows:250px;gap:16px}
#galeria .gallery-item,#galeria .gallery-item:first-child{height:auto;min-height:0;grid-row:auto}
#galeria .gallery-item:first-child{grid-row:span 2}
#galeria .gallery-item:nth-child(4){grid-column:2}
#galeria .gallery-item:nth-child(5){grid-column:3}
#galeria .gallery-item>span{font-size:19px}
#ubicacion{background:#111310}
#ubicacion .section-heading{align-items:start}
#ubicacion .section-heading>p{padding-top:52px}
#ubicacion .location-layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:7%;align-items:stretch}
#ubicacion .location-card{min-height:540px;background:#151b16;justify-content:flex-end;padding:42px}
#ubicacion .location-card:before{display:none}
#ubicacion .location-card .eyebrow{color:#e8e2d5}
#ubicacion .location-symbol{color:#d9c39a35;top:30px;right:35px}
#ubicacion .location-card h3{font-size:clamp(38px,4vw,58px);margin:18px 0 28px}
#ubicacion .location-map{position:absolute;inset:0 0 auto;height:52%;background:#20271f}
#ubicacion .location-map iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.7) contrast(.9)}
#ubicacion .location-card>.eyebrow,#ubicacion .location-card>h3,#ubicacion .location-card>.button{z-index:1}
#ubicacion .contact-info{padding:25px 0 0}
#ubicacion .contact-row>span{color:#a99772}
#ubicacion .contact-row a{color:#f1eee5}
.header-book,.quick-contact>button,.button.gold{background:#e8bf51;border-color:#e8bf51}
.header-book:hover,.quick-contact>button:hover,.button.gold:hover{background:#f0cc6b;border-color:#f0cc6b}

@media(max-width:560px){
	.inner{padding-top:30px}
	.section-heading{margin-bottom:26px}
	#servicios .section-heading>p,#ubicacion .section-heading>p{padding-top:0}
	#servicios .services-layout{gap:22px}
	#servicios .service-photo{height:250px}
	#servicios .service-photo>span{left:15px;bottom:15px;font-size:8px}
	#servicios .filters{gap:18px;overflow:auto;padding-bottom:2px}
	#servicios .filters button{flex:0 0 auto}
	#experiencia{margin:0}
	#experiencia .experience-layout{gap:20px}
	#experiencia .experience-copy{padding:0;order:1}
	#experiencia .experience-photo{order:2;height:365px;min-height:0}
	#experiencia .experience-point{padding:18px 0}
	#legacy-team{margin:0}
	#legacy-team .legacy-team-layout{gap:28px}
	#legacy-team .legacy-team-layout>div:first-child{padding:0}
	#legacy-team .legacy-team-poster{height:auto;min-height:0;width:100%;aspect-ratio:4 / 5;box-shadow:none}
	#legacy-team .legacy-team-stage{grid-template-rows:55% 45%}
	#legacy-team .legacy-team-brand{padding:6px 12%;border-bottom-width:4px}
	#legacy-team .legacy-team-photo-grid{padding:6px;gap:4px}
	#galeria .section-heading{margin-bottom:22px}
	#galeria .gallery{grid-template-columns:1.15fr .85fr;grid-auto-rows:210px;gap:10px}
	#galeria .gallery-item:first-child{grid-column:1/-1;grid-row:auto;height:300px}
	#galeria .gallery-item:nth-child(4),#galeria .gallery-item:nth-child(5){grid-column:auto}
	#galeria .gallery-item>span{font-size:14px;left:12px;right:12px;bottom:12px}
	#ubicacion .location-layout{gap:24px}
	#ubicacion .location-card{min-height:470px;padding:25px}
	#ubicacion .location-map{height:48%}
	#ubicacion .location-symbol{font-size:110px;top:20px;right:20px}
	#ubicacion .location-card h3{font-size:37px}
	#ubicacion .contact-info{padding-top:0}
}

/* Inicio focuses on the work and one clear next step. */
.hero-art .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.9);z-index:0}
.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#08090818 25%,#080908d9 100%);z-index:1;pointer-events:none}
.hero-art .photo-top,.hero-art .showcase-bottom,.hero-art .showcase-corner{z-index:2}
.hero-art .showcase-bottom>span{color:#f1eee5}
.home-bottom>span{color:#e8bf51}
@media(max-width:560px){
	.header-book{max-width:142px;overflow:hidden;text-overflow:ellipsis}
	.hero-art .hero-photo{object-position:center 42%}
	.home-bottom>span{letter-spacing:1.4px}
}

/* Shared motion language: reveal content, then let real imagery breathe. */
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.25,1) var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.7,.25,1) var(--reveal-delay,0ms)}
.reveal-ready.revealed{opacity:1;transform:none}
.view:not([hidden]) .section-heading h2,.view:not([hidden]) .section-heading>p,.view:not([hidden]) .actions,.view:not([hidden]) .home-bottom{animation:content-rise .8s cubic-bezier(.2,.7,.25,1) both}
.view:not([hidden]) .section-heading>p{animation-delay:.12s}
.view:not([hidden]) .actions{animation-delay:.2s}
.view:not([hidden]) .home-bottom{animation-delay:.3s}
.view:not([hidden]) .home-copy .eyebrow{animation:eyebrow-in .7s ease both}
.view:not([hidden]) .home-copy h1{animation:headline-in .95s cubic-bezier(.16,.75,.25,1) .08s both}
.view:not([hidden]) .hero-art{animation:hero-in 1s cubic-bezier(.16,.75,.25,1) .12s both}
.view:not([hidden]) .experience-copy,.view:not([hidden]) .legacy-team-layout>div:first-child{animation:copy-in .85s cubic-bezier(.16,.75,.25,1) .12s both}
.view:not([hidden]) .experience-photo,.view:not([hidden]) .legacy-team-poster{animation:visual-in .95s cubic-bezier(.16,.75,.25,1) .18s both}
.view:not([hidden]) .service-photo{animation:visual-in .9s cubic-bezier(.16,.75,.25,1) .1s both}
.view:not([hidden]) .gallery-item:nth-child(1){animation:gallery-in .7s ease .05s both}
.view:not([hidden]) .gallery-item:nth-child(2){animation:gallery-in .7s ease .12s both}
.view:not([hidden]) .gallery-item:nth-child(3){animation:gallery-in .7s ease .19s both}
.view:not([hidden]) .gallery-item:nth-child(4){animation:gallery-in .7s ease .26s both}
.view:not([hidden]) .gallery-item:nth-child(5){animation:gallery-in .7s ease .33s both}
.hero-art .hero-photo{animation:hero-drift 14s ease-in-out infinite alternate}
.photo-frame img,.gallery-item img{transition:transform 1.1s cubic-bezier(.2,.7,.25,1),filter .5s ease}
.photo-frame:hover img,.gallery-item:hover img{transform:scale(1.045);filter:saturate(1.08)}
.service:hover,.experience-point:hover,.contact-row:hover{transform:translateX(5px);transition:transform .35s ease,background .35s ease}
.gallery-item{transition:transform .45s ease,box-shadow .45s ease}
.gallery-item:hover{transform:translateY(-5px);box-shadow:0 16px 30px #0008}
nav a:after{transition:width .3s ease,background .3s ease}
.quick-contact{transition:transform .35s ease,box-shadow .35s ease}
.quick-contact:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0008}
@keyframes content-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes eyebrow-in{from{opacity:0;letter-spacing:6px;transform:translateX(-14px)}to{opacity:1;letter-spacing:2.7px;transform:none}}
@keyframes headline-in{from{opacity:0;clip-path:inset(0 0 100%);transform:translateY(24px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes hero-in{from{opacity:0;clip-path:inset(0 0 0 12%);transform:translateX(28px) scale(.98)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes copy-in{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}
@keyframes visual-in{from{opacity:0;transform:translateX(24px) scale(.97)}to{opacity:1;transform:none}}
@keyframes gallery-in{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@keyframes hero-drift{from{transform:scale(1.01);object-position:48% 40%}to{transform:scale(1.06);object-position:53% 46%}}
@media(prefers-reduced-motion:reduce){
	.reveal-ready,.view:not([hidden]) .section-heading h2,.view:not([hidden]) .section-heading>p,.view:not([hidden]) .actions,.view:not([hidden]) .home-bottom,.view:not([hidden]) .home-copy .eyebrow,.view:not([hidden]) .home-copy h1,.view:not([hidden]) .hero-art,.view:not([hidden]) .experience-copy,.view:not([hidden]) .legacy-team-layout>div:first-child,.view:not([hidden]) .experience-photo,.view:not([hidden]) .legacy-team-poster,.view:not([hidden]) .service-photo,.view:not([hidden]) .gallery-item{opacity:1;transform:none;clip-path:none;animation:none}
  .hero-art .hero-photo{animation:none}
}

.gallery-filters{display:flex;gap:22px;margin:-10px 0 28px;border-bottom:1px solid #2b3028;overflow:auto}
.gallery-filters button{flex:0 0 auto;background:transparent;color:#8f968c;font-size:11px;letter-spacing:1.4px;padding:12px 0;border-bottom:2px solid transparent;transition:color .25s,border-color .25s}
.gallery-filters button:hover,.gallery-filters button[aria-pressed=true]{color:#e8bf51;border-color:#e8bf51}
.booking-step{font-size:10px;letter-spacing:1.8px;color:#e8bf51;margin:0 0 16px}
.booking-step span{color:#777d75;padding:0 5px}
.booking-note{line-height:1.6}
#booking select{border-color:#e8bf51;box-shadow:0 0 0 1px #e8bf511f}
#booking-send{margin-top:8px;justify-content:center}
@media(max-width:560px){.gallery-filters{gap:18px;margin-top:-4px}.gallery-filters button{font-size:10px}.booking-step{font-size:9px}}

/* Availability actions: one visual system, different emphasis by context. */
.header-book,.home .actions .button,.quick-contact>button,#booking-send{position:relative;isolation:isolate;overflow:hidden;border:1px solid #e8bf51;transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease,box-shadow .3s ease}
.header-book:before,.home .actions .button:before,.quick-contact>button:before,#booking-send:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 28%,#fff8 48%,transparent 68%);transform:translateX(-120%);transition:transform .7s ease;z-index:-1}
.header-book:hover:before,.home .actions .button:hover:before,.quick-contact>button:hover:before,#booking-send:hover:before{transform:translateX(120%)}
.header-book{min-height:48px;display:inline-flex;align-items:center;gap:14px;padding:12px 16px;font-weight:600;box-shadow:0 8px 20px #0003}
.header-book span,.home .actions .button span,.quick-contact>button span,#booking-send span{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid currentColor;border-radius:50%;font-size:13px;line-height:1;transition:transform .3s ease}
.header-book:hover,.home .actions .button:hover,.quick-contact>button:hover,#booking-send:hover{transform:translateY(-3px);box-shadow:0 12px 26px #0006}
.header-book:hover span,.home .actions .button:hover span,.quick-contact>button:hover span,#booking-send:hover span{transform:rotate(45deg)}
.home .actions .button{min-width:238px;min-height:58px;justify-content:space-between;padding:16px 18px;font-size:12px;box-shadow:0 12px 28px #0005}
.quick-contact>button{font-weight:700;min-width:205px}
#booking-send{min-height:56px}
@media(max-width:800px){.header-book{min-height:44px;padding:10px 12px}.header-book span{width:20px;height:20px}}
@media(max-width:560px){
	.home .actions .button{width:100%;min-width:0;min-height:56px}
	.header-book{max-width:156px;gap:7px}
	.quick-contact>button{min-width:0}
}

/* Art direction pass: quieter chrome, stronger photography, clearer hierarchy. */
:root{--gold:#e8bf51;--ink:#090b0a;--soft-line:#282d27}
body{background:var(--ink)}
html,body{overflow-x:clip}
.header{border-bottom-color:var(--soft-line)}
.header-book{border-color:#e8bf51;background:#e8bf51;color:#11130e}
.header-book:hover{background:#f0cc6b;border-color:#f0cc6b}
.home{gap:0;padding-top:36px}
.home-copy{padding-right:clamp(28px,5vw,90px)}
.home-copy .eyebrow{margin-bottom:30px}
.home-copy h1{max-width:680px;font-size:clamp(54px,6.1vw,100px);letter-spacing:-2.5px}
.home-copy .intro{max-width:390px;color:#c0c3ba}
.home-copy .actions{margin-top:4px}
.hero-art{margin-left:clamp(18px,3vw,46px);border-color:#30372d;min-height:clamp(500px,70vh,720px)}
.hero-art:after{background:linear-gradient(180deg,#08090808 20%,#080908e8 100%)}
.hero-art .photo-top{color:#d1d5cb}
.showcase-bottom>a{border-color:#e8bf51;color:#e8bf51}
.home-bottom{border-bottom-color:var(--soft-line);margin-top:18px}
.home-bottom>span{color:#b4baae}
.home-bottom>a{font-size:clamp(20px,2vw,28px)}

#servicios{background:#0d100e}
#servicios .section-heading{max-width:1240px}
#servicios .section-heading h2{font-size:clamp(52px,5.2vw,82px)}
#servicios .services-layout{gap:clamp(36px,7vw,110px)}
#servicios .service-photo{height:clamp(500px,68vh,740px);border:1px solid #30372d}
#servicios .service-photo:after{content:'01';position:absolute;right:24px;top:24px;color:#e8bf51;font:11px var(--sans);letter-spacing:2px}
#servicios #service-list{border-top:1px solid var(--soft-line)}
#servicios .service{padding:26px 0;border-bottom-color:var(--soft-line)}
#servicios .service-number{color:#e8bf51}
#servicios .service h3{font-size:clamp(21px,2vw,28px)}
#servicios .service p:last-child{color:#e8bf51;font-size:12px;letter-spacing:.4px}
#servicios .service a{border-color:#657052;color:#e8bf51}

#experiencia{background:#111512}
#experiencia .experience-layout{gap:clamp(38px,8vw,130px)}
#experiencia .experience-photo{border:1px solid #30372d;min-height:580px}
#experiencia .experience-copy{max-width:520px}
#experiencia .experience-photo>img{height:76%;object-position:50% 42%}
#experiencia .experience-strip{position:absolute;left:16px;right:16px;bottom:16px;height:20%;display:grid;grid-template-columns:1fr 1fr;gap:10px;z-index:2}
#experiencia .experience-strip img{min-width:0;min-height:0;width:100%;height:100%;object-fit:cover;border:1px solid #e8bf5166;transition:transform .5s ease}
#experiencia .experience-strip img:hover{transform:translateY(-5px)}
#experiencia .experience-copy h2{font-size:clamp(50px,5.2vw,82px)}
#experiencia .experience-point{padding:26px 0;border-top-color:#354036}
#experiencia .experience-point h3{font-size:clamp(22px,2vw,29px)}

#legacy-team{background:#0b0d0c}
#legacy-team .legacy-team-layout{gap:clamp(40px,8vw,130px)}
#legacy-team .legacy-team-layout h2{font-size:clamp(50px,5vw,78px)}
#legacy-team .legacy-team-poster{border-color:#394238}
#legacy-team .legacy-team-brand:before{inset:18px;border-color:#e8bf51b8}

#galeria{background:#090b0a}
#galeria .section-heading h2{font-size:clamp(50px,5vw,78px)}
#galeria .gallery-filters{border-bottom-color:var(--soft-line)}
#galeria .gallery{gap:12px;grid-auto-rows:clamp(220px,25vw,320px)}
#galeria .gallery-item{background:#141914}
#galeria .gallery-item:after{background:linear-gradient(transparent,#060806df)}
#galeria .gallery-item>span{font-size:clamp(16px,1.8vw,24px)}

#ubicacion{background:#0d100e}
#ubicacion .section-heading h2{font-size:clamp(50px,5vw,78px)}
#ubicacion .location-card{border:1px solid #30372d;background:#121713}
#ubicacion .location-map{border-bottom:4px solid #e8bf51}
#ubicacion .contact-info{border-left:1px solid var(--soft-line);padding-left:clamp(20px,3vw,45px)}
#ubicacion .contact-row{border-bottom-color:#30372d}

#booking{border-color:#e8bf51;box-shadow:0 24px 80px #000b}
#booking h2{font-size:clamp(42px,5vw,64px)}

@media(max-width:800px){
	.home{padding-top:28px}
	.hero-art{min-height:450px}
	#experiencia .experience-photo{min-height:500px}
	#ubicacion .contact-info{border-left:0;padding-left:0}
}
@media(max-width:560px){
	.home-copy h1{font-size:clamp(48px,14vw,72px);letter-spacing:-1.5px}
	.home-copy{padding-right:0}
	.hero-art{margin-left:0;min-height:0;height:390px}
	.home-bottom{padding-top:20px}
	#servicios .service-photo{height:270px}
	#servicios .service{padding:21px 0}
	#experiencia .experience-photo{min-height:0}
	#experiencia .experience-photo>img{height:74%}
	#experiencia .experience-strip{left:10px;right:10px;bottom:10px;height:22%;gap:6px}
	#galeria .gallery{grid-auto-rows:190px}
	#ubicacion .location-card{border-left:0;border-right:0}
}

/* Location information is grouped as contact, hours, and payment. */
.experience-reviews{margin-top:70px;padding-top:50px;border-top:1px solid #4c4733}
.reviews-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}
.reviews-heading h2{font-size:clamp(34px,3.5vw,52px);letter-spacing:-1px}
.reviews-heading>p{font-size:13px;color:var(--muted);line-height:1.8;max-width:330px}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.review{margin:0;padding:12px 0 20px;border-top:1px solid #887247;display:flex;flex-direction:column;align-items:start}
.review-mark{font:70px Georgia,serif;color:var(--gold);height:55px;line-height:1.1}
.review blockquote{margin:0 0 25px;font-size:16px;line-height:1.8;color:#e1e0d7}
.review figcaption{font-size:12px;color:var(--gold);margin-top:auto}
.reviews-source{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:23px;border-top:1px solid #34372c}
.reviews-source p{font-size:11px;color:#a8ac9f;max-width:450px;line-height:1.7}
.reviews-source .text-link{flex-shrink:0}
@media(max-width:800px){
  #galeria .gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:24px}
  #galeria .gallery-item:nth-child(n){grid-column:auto;grid-row:auto;height:auto;display:flex;flex-direction:column;align-self:start;background:transparent;overflow:visible}
  #galeria .gallery-item img{height:auto;aspect-ratio:4/5;object-fit:cover;flex-shrink:0}
  #galeria .gallery-item:after{display:none}
  #galeria .gallery-item>span{position:static;display:block;padding:15px 0 0;font-size:20px;line-height:1.4;color:#f1eee5}
  #galeria .gallery-item:hover,#galeria .gallery-item:hover img{transform:none;box-shadow:none}
  .reviews-heading{align-items:start;flex-direction:column;gap:10px}.reviews-grid{gap:22px}.review blockquote{font-size:14px}.reviews-source{align-items:start;flex-direction:column;gap:8px}
}
@media(max-width:560px){
  #galeria .gallery{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:30px}
  #galeria .gallery-item:nth-child(n){grid-column:1;grid-row:auto;width:100%;animation:none}
  #galeria .gallery-item img{aspect-ratio:4/5;max-height:480px;object-position:center}
  #galeria .gallery-item>span{padding:14px 0 16px;border-bottom:1px solid #373b2d;font-size:23px}
  #galeria .gallery-filters{flex-wrap:wrap;gap:8px 20px;overflow:visible;margin-bottom:26px}
  #galeria .gallery-filters button{font-size:12px;letter-spacing:.5px;min-height:44px;padding:10px 0}
  #galeria .section-heading{margin-bottom:18px}#galeria .section-heading h2{font-size:43px}
  .experience-reviews{margin-top:38px;padding-top:32px}.reviews-heading h2{font-size:37px}.reviews-heading{margin-bottom:23px}
  .reviews-grid{grid-template-columns:1fr;gap:15px}.review{padding:8px 0 23px}.review blockquote{font-size:16px;margin-bottom:18px}.review-mark{height:48px;font-size:62px}
  .reviews-source{padding-top:18px}.reviews-source .text-link{font-size:12px;white-space:normal}
}
#ubicacion .contact-info{display:flex;flex-direction:column;border-left:1px solid var(--soft-line);padding-left:clamp(20px,3vw,45px)}
#ubicacion .contact-info:before{content:'CONTACTO Y HORARIOS';display:block;color:#e8bf51;font-size:10px;font-weight:600;letter-spacing:2.4px;margin:0 0 22px}
#ubicacion .contact-info>div:first-of-type{padding:20px 0;border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line)}
#ubicacion .hours-row{margin:8px 0;align-items:baseline}
#ubicacion .hours-row span{color:#9ea79b}
#ubicacion .hours-row strong{color:#f1eee5;font-size:14px}
#ubicacion .contact-row{padding:18px 0;border-bottom-color:#30372d}
#ubicacion .contact-row a{display:inline-block;transition:color .25s,transform .25s}
#ubicacion .contact-row a:hover{color:#e8bf51;transform:translateX(4px)}
#ubicacion .payment-note{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--soft-line);font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:#e8bf51}
#ubicacion .contact-info details{margin-top:18px}
@media(max-width:800px){#ubicacion .contact-info{border-left:0;padding-left:0}}
@media(max-width:560px){#ubicacion .contact-info:before{margin-top:4px}#ubicacion .contact-info>div:first-of-type{padding:16px 0}.hours-row{font-size:12px}}
@media(max-width:560px){
	.quick-contact>a,.quick-contact>button{padding:12px 8px;gap:8px;font-size:10px;letter-spacing:.1px;white-space:nowrap}
	.quick-contact>a span,.quick-contact>button span{margin-left:2px}
	#booking{width:min(520px,94vw);padding:30px 20px 22px}
	#booking .booking-intro{font-size:12px;line-height:1.6}
	#booking select{min-height:54px;font-size:14px}
	#booking-send{min-height:54px}
}
